2016-03-25 3 views
0

Я хочу отображать изображение из поля изображения в базе данных SQL с использованием C# и WPF. Я пробовал следующие коды, но просто извлекал все поля, отличные от данных поля изображения.Связывание списка с полем базы данных SQL

<ListBox x:Name="listBox" HorizontalContentAlignment="Left" FontFamily="Arial" FontSize="18" HorizontalAlignment="Left" Height="552" Margin="10,198,0,0" VerticalAlignment="Top" Width="754" ItemsSource="{Binding}" > 
     <ListBox.ItemTemplate> 
      <DataTemplate> 
       <DockPanel > 
        <TextBlock Text="{Binding ID}" FontWeight="Bold" 
         DockPanel.Dock="Left" 
         Margin="5,0,10,0" Width="20" /> 
        <TextBlock Text="{Binding Name}" FontWeight="Bold" 
         DockPanel.Dock="Left" 
         Margin="5,0,10,0" Width="150" /> 
        <Image Source="{Binding PhotoID}" 
          DockPanel.Dock="Left" 

         Margin="5,0,10,0" Width="150" Height="150" Stretch="Uniform"/> 

       </DockPanel> 
      </DataTemplate> 
     </ListBox.ItemTemplate> 
    </ListBox> 

и в C# разделе я использую следующие коды, а также:

Private void RetrieveData() 
    { 
     string ConString = conn; 
     using (SqlConnection con = new SqlConnection(ConString)) 
     { 

      SqlCommand cmd = new SqlCommand(CmdString, con); 
      sda = new SqlDataAdapter(cmd); 
      dt = new DataTable(); 
      sda.Fill(dt); 

     } 

public MainPage() 
    { 
     InitializeComponent(); 
     try 
     { 
      CmdString = "Select ID,Name,PhotoID from Employees"; 
      RetrieveData(); 
      listBox.ItemsSource = dt.DefaultView; 


     } 
     catch 
     { 
      MessageBox.Show("db error"); 
     } 
    } 

Пожалуйста, дайте мне знать, как решить эту проблему.

ответ

0

Я решил проблему. На самом деле, нет проблем с вышеупомянутыми кодами. Я просто изменил тип данных полей с изображения на двоичный в базе данных SQL, и таким образом проблема решена.

Я не знаю, почему это так, но, похоже, проблема с типом данных изображений.

Смежные вопросы