Измените HTML-код генерации строки следующим образом:
for(i=0; i');
$(' ').appendTo($(row)).html(data[i].name);
$(' ').appendTo($(row)).html(getDot(data[i].online));
$(' ').appendTo($(row)).html(getDot(data[i].offline));
$(' ').appendTo($(row)).html(data[i].comment);
$('#show').append($(row));
}
Функция для генерации DOT:
function getDot(data){
var div = '';
if(data) {
div = $('');
if(data === 'IN') {
$(div).addClass('green-dot');
} else if(data === 'OUT') {
$(div).addClass('red-dot');
}
}
return div;
}
CSS :
div.dot {
width : 20px;
height : 20px;
border-radius : 50%;
}
div.green-dot{
background-color : green;
}
div.red-dot{
background-color : red;
}
Проверьте демонстрацию в этой скрипке .
Спасибо за всю Вашу справку. Я теперь получил его работа. Я все еще не уверен точно, какова проблема была.
Это - то, как я поместил изображения в свою базу данных …
Private Sub ButtonUpload_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs)
Dim FileOpenStream As Stream = Nothing
Dim FileBox As New Microsoft.Win32.OpenFileDialog()
FileBox.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures)
FileBox.Filter = "Pictures (*.jpg;*.jpeg;*.gif;*.png)|*.jpg;*.jpeg;*.gif;*.png|" & _
"All Files (*.*)|*.*"
FileBox.FilterIndex = 1
FileBox.Multiselect = False
Dim FileSelected As Nullable(Of Boolean) = FileBox.ShowDialog(Me)
If FileSelected IsNot Nothing AndAlso FileSelected.Value = True Then
Try
FileOpenStream = FileBox.OpenFile()
If (FileOpenStream IsNot Nothing) Then
Dim ByteArray As Byte()
Using br As New BinaryReader(FileOpenStream)
ByteArray = br.ReadBytes(FileOpenStream.Length)
End Using
Dim g As New ZackGraphic
g.Id = Guid.NewGuid
g.ImageData = ByteArray
g.FileSize = CInt(ByteArray.Length)
g.FileName = FileBox.FileName.Split("\").Last
g.FileExtension = "." + FileBox.FileName.Split(".").Last.ToLower
g.DateAdded = Now
Dim bmp As New BitmapImage
bmp.BeginInit()
bmp.StreamSource = New MemoryStream(ByteArray)
bmp.EndInit()
bmp.Freeze()
g.PixelWidth = bmp.PixelWidth
g.PixelHeight = bmp.PixelHeight
db.AddToZackGraphic(g)
db.SaveChanges()
End If
Catch Ex As Exception
MessageBox.Show("Cannot read file from disk. " & Ex.Message, "Add a New Image", MessageBoxButton.OK, MessageBoxImage.Error, MessageBoxResult.OK)
Finally
If (FileOpenStream IsNot Nothing) Then
FileOpenStream.Close()
End If
End Try
End If
End Sub
Это - мой преобразователь значения, используемый для привязки Массива байтов с Изображением …
Class BinaryImageConverter
Implements IValueConverter
Private Function Convert(ByVal value As Object, ByVal targetType As Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.Convert
If value IsNot Nothing AndAlso TypeOf value Is Byte() Then
Dim ByteArray As Byte() = TryCast(value, Byte())
Dim bmp As New BitmapImage()
bmp.BeginInit()
bmp.StreamSource = New MemoryStream(ByteArray)
bmp.EndInit()
Return bmp
End If
Return Nothing
End Function
Private Function ConvertBack(ByVal value As Object, ByVal targetType As Type, ByVal parameter As Object, ByVal culture As System.Globalization.CultureInfo) As Object Implements IValueConverter.ConvertBack
Throw New Exception("The method or operation is not implemented.")
End Function
End Class
Это - мой XAML, который использует дисплей преобразователя изображение …
<Window xmlns:local="clr-namespace:MyProjectName" ... >
<Window.Resources>
<local:BinaryImageConverter x:Key="imgConverter" />
</Window.Resources>
...
<Image Source="{Binding Path=ImageData, Converter={StaticResource imgConverter}}" />
Попытайтесь использовать это
Dim imageSource as ImageSource
Dim bitmapDecoder = new PngBitmapDecoder(stream, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.OnLoad);
imageSource = bitmapDecoder.Frames[0];
imageSource.Freeze();
Return imageSource
Мое предположение было бы то, что байты не являются законным форматом изображения. Я полагаю, что код ошибки соответствует WINCODEC_ERR_COMPONENTNOTFOUND
, который согласовывался бы с недопустимыми байтами.
В каком формате массив байтов, как предполагается, находится? Можно ли сохранить его на диск и попытаться ли открыть его с другой программой обработки изображений?
Я полагаю, что это - на самом деле проблема права доступа. Попытайтесь работать с правами администратора и посмотрите, работает ли это, и пойдите оттуда.
Править: Я не соглашаюсь с downvote и комментарием. Смотрите на эту ссылку:
http://social.expression.microsoft.com/Forums/en-US/wpf/thread/617f6711-0373-44cc-b72c-aeae20f0f7a8/
У этого пользователя была та же самая ошибка, и она была вызвана настройками безопасности. Поэтому я поддерживаю свой ответ (который не может быть причиной, но это, конечно, стоит попытки),