2013-08-23 1 views
2

이 포럼과 프로그래밍을 처음 사용합니다. 나는 개발자 커뮤니티에 나의 의심을 분명히하기 위해 조언했다. 내 영어가 좋지 않아서 사과드립니다. 그래서 Google 번역사를 사용해야하며 텍스트가 완벽하지 않고 내 정보가 부족합니다. 내 질문을 검색하기 전에 내 메시지를 게시했지만 아무것도 찾지 못했습니다.버튼에 그림 넣기

단추에 이미지를 넣고 싶습니다. 지금까지 단추를 넣을 이미지를 목록 상자에 표시하는 쿼리를 만들었습니다.

 var obtenerImagen = (from n in basedeDatos.tablaProductos    
          select n.imagenProducto);       

     listBox1.ItemsSource = obtenerImagen; 

이제 내 생각은 단추의 이미지를 쿼리에서 가져 오는 것입니다. (/ ** /)

  • 인수 1 : '문자열'에서 'System.Linq.IQueryable'에서 변환 할 수 없습니다
  • 암시 적으로 변환 할 수 없습니다
     ImageSourceConverter conversor = new ImageSourceConverter(); 
    
         image1.Source = (ImageSource)conversor.ConvertFromString(obtenerImagen); /**/ 
    
         image1 = obtenerImagen.FirstOrDefault(); /**/ 
    

    나에게 다음과 같은 오류 라인을 제공합니다 'System.Windows.Controls.Image'에서 '문자열을'입력
  • 'System.ComponentModel.TypeConverter.ConvertFromString (문자열)'에 가장 적합한 오버로드 된 메서드는 일부 잘못된 인수가

내가 뭘 잘못하고 있니?

답변

0

개체 obtenerImagen은 IQueryable 형식의 개체입니다.

은 아마 당신은 사용해야
var obtenerImagen = (from n in basedeDatos.tablaProductos    
          select n.imagenProducto).ToList(); 

은 그럼 당신은 문자열 목록을 가지고있다. 이제 예를 들어 첫 번째 요소를 호출 할 수 있습니다.

string imageSource = obtenerImagen.FirstOrDefault(); 
0

기본적으로 프로젝트의 자원에서 이미지를 사용하여 버튼에 넣는 코드입니다.

<Button> 
    <Button.Background> 
     <ImageBrush ImageSource="/Application;component/Images/Image.png" /> 
    </Button.Background> 
</Button> 
2

목록 상자에 항목 템플릿을 정의해야합니다.

var obtenerImagen = (from n in basedeDatos.tablaProductos    
        select n.imagenProducto);       

listBox1.ItemsSource = obtenerImagen; 
:

<ListBox x:Name="listBox1> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
     <Image Source="{Binding}" /> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 

는 그런 다음 목록 상자의 ItemsSource을 설정하는 코드를 사용할 수 있습니다 : 나는 당신에게 예를 보여줍니다