C# 将图片放入按钮中
我是这个论坛和节目的新手。我已经建议开发者社区澄清我的疑问。我很抱歉,因为我的英语不好,所以我不得不使用谷歌翻译,可能文本不完美,而且我缺乏信息。在发布我的消息之前,我一直在搜索我的问题,但我没有找到任何东西 我想把图像放在按钮中,到目前为止,我已经设法做了一个查询,我在一个列表框中显示了你想放在按钮中的图像C# 将图片放入按钮中,c#,wpf,C#,Wpf,我是这个论坛和节目的新手。我已经建议开发者社区澄清我的疑问。我很抱歉,因为我的英语不好,所以我不得不使用谷歌翻译,可能文本不完美,而且我缺乏信息。在发布我的消息之前,我一直在搜索我的问题,但我没有找到任何东西 我想把图像放在按钮中,到目前为止,我已经设法做了一个查询,我在一个列表框中显示了你想放在按钮中的图像 var obtenerImagen = (from n in basedeDatos.tablaProductos
var obtenerImagen = (from n in basedeDatos.tablaProductos
select n.imagenProducto);
listBox1.ItemsSource = obtenerImagen;
现在我的想法是将查询中的图像放在按钮上
ImageSourceConverter conversor = new ImageSourceConverter();
image1.Source = (ImageSource)conversor.ConvertFromString(obtenerImagen); /**/
image1 = obtenerImagen.FirstOrDefault(); /**/
这给了我以下错误行:(/**/)
- 参数1:无法从“System.Linq.IQueryable”转换为“string”
- 无法将类型“string”隐式转换为“System.Windows.Controls.Image”
- 与“System.ComponentModel.TypeConverter.ConvertFromString(string)”匹配的最佳重载方法具有一些无效参数
我做错了什么?这是一段代码,它基本上使用了项目资源中的图像并将其放入按钮中
<Button>
<Button.Background>
<ImageBrush ImageSource="/Application;component/Images/Image.png" />
</Button.Background>
</Button>
您的对象
obtenerImagen
是IQueryable类型的对象
也许你应该使用:
var obtenerImagen = (from n in basedeDatos.tablaProductos
select n.imagenProducto).ToList();
然后你有一个字符串列表。现在,您可以通过调用获取第一个元素,例如:
string imageSource = obtenerImagen.FirstOrDefault();
您需要为列表框定义一个项目模板。我将向您展示一个示例:
<ListBox x:Name="listBox1>
<ListBox.ItemTemplate>
<DataTemplate>
<Image Source="{Binding}" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
var obtenerImagen = (from n in basedeDatos.tablaProductos
select n.imagenProducto);
listBox1.ItemsSource = obtenerImagen;