首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WPF CustomControl与图像绑定

WPF CustomControl与图像绑定
EN

Stack Overflow用户
提问于 2010-04-12 08:35:23
回答 1查看 980关注 0票数 0

因为一个愚蠢的问题,两天来我真的很生气。我已经在这里提出了这个问题,但似乎我的问题迷失了,没有人会再看到它。我的问题很简单:

我有一个包含CustomControl (库项目)的项目,这个自定义控件代码是从窗口控件继承的。所以它有一个继承下来的图标属性。在创建控件设计的XAML代码中,我希望在我的ResourceDictionary中放置一个绑定到图标属性的图像。

代码语言:javascript
复制
...    
<Image Grid.Column="0" Margin="3" Width="27" Height="27" Source="{Binding Icon}" />
...

然后,我有第二个项目( WPF应用程序项目)引用我的第一个项目,并使用这个自定义控制窗口,其中设置了Icon属性。图标属性的设置是正确的,因为我可以在任务栏中看到图标,但是图像没有出现,看起来我的绑定不起作用。

代码语言:javascript
复制
<SILU:FlatForm x:Class="SILU_MovieManager.WinMain"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:SILU="clr-namespace:SILU_Controls;assembly=SILU_Controls"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="SILU Movie Manager" Height="425" Width="682" Loaded="FlatForm_Loaded" Icon="/SILU_MovieManager;component/Resources/Images/Film.ico">
    <Grid>

    </Grid>
</SILU:FlatForm>

我真的不知道如何绑定,这是我在这里找到的一个解决方案,但是不适合我的。(Solution)

EN

回答 1

Stack Overflow用户

发布于 2010-04-12 09:13:43

我还没有尝试过这个解决方案,这是通过代码和图标实现的

代码语言:javascript
复制
<Window x:Class="WPFWindowAPP.IconLoader"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="WPFWindowAPP" Height="164" Width="405"

>

<Canvas>


    <Button Name="btn" Click="btnClick" Canvas.Top="40" Canvas.Right="90" Width="75">Load Icon</Button>

    <Image Name="icoDisplay" Canvas.Left="10" Canvas.Top="80" Stretch="None" />

</Canvas>

代码语言:javascript
复制
    void btnClick(object sender, RoutedEventArgs e)        {

IconImage.ExtractAssociatedIcon(filePath.Text);位图bmp = ico.ToBitmap();MemoryStream strm =新MemoryStream();bmp.Save(strm,System.Drawing.Imaging.ImageFormat.Png);

代码语言:javascript
复制
       BitmapImage bmpImage = new BitmapImage();
代码语言:javascript
复制
  bmpImage.BeginInit();
代码语言:javascript
复制
       strm.Seek(0, SeekOrigin.Begin);             bmpImage.StreamSource = strm;             bmpImage.EndInit();
代码语言:javascript
复制
  icoDisplay.Source = bmpImage; }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2620733

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档