解决嵌入WinForm的WPF控件无法显示图片问题

解决办法是在控件初始化时,通过下面方法再次加载图片:

ucCanvas.CreateCoordinateImage.Source = GetImageIcon(global::MainApplication.Properties.Resources.DL_Coordinate2);
private static BitmapImage GetImageIcon(System.Drawing.Bitmap bitmap)
        {
            BitmapImage bitmapImage = new BitmapImage();

            try
            {

                System.IO.MemoryStream ms = new System.IO.MemoryStream();
                bitmap.Save(ms, bitmap.RawFormat);
                bitmapImage.BeginInit();
                bitmapImage.StreamSource = ms;
                bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
                bitmapImage.EndInit();
                bitmapImage.Freeze();

            }
            catch (Exception ex)
            {

                Utilities.ShowExceptionMessage(ex);
            }

            return bitmapImage;
        }
时间: 2024-08-03 22:43:24

解决嵌入WinForm的WPF控件无法显示图片问题的相关文章

对话框上动态控件的创建、在Picture Control控件上显示图片

1  MFC对话框之上的动态控件的创建 对话框上的控件是MFC类的一个具体对象. 当在对话框之上使用静态控件时,可以根据类向导来为每个控件添加消息.响应函数以及变量. 当需要在对话框中动态的创建某个控件时,就需要手动来代替类向导为动态控件添加消息.响应函数及变量. 动态创建控件时,可按照以下步骤进行: (1) 明确控件所属于的类 每一个控件都对应着一个类(例如按钮Button所属于的类为CButton). 如,在程序中我们需要用CButton类创建一个具体的按钮对象,并用函数指示它在对话框之上的

WPF控件库:图片按钮的封装

需求:很多时候界面上的按钮都需要被贴上图片,一般来说: 1.按钮处于正常状态,按钮具有背景图A 2.鼠标移至按钮上方状态,按钮具有背景图B 3.鼠标点击按钮状态,按钮具有背景图C 4.按钮处于不可用状态,按钮具有背景图D 实现起来,毫无疑问,没什么难度.但是过程还是比较繁琐.这里我将这个过程封装为新的控件类:ImageButton ImageButton中有四个属性(支持绑定),分别对应上面A.B.C.D四个背景图的路径. #region 属性 /// <summary> /// 按钮处于正常

解决asp.net中repeater控件的显示数量控制

在使用oracle时,没有top这个属性,如果想限制查询数量,必须使用伪字段ROWNUM 可以看到这里第一列没有title的字段就是rownum字段,在oracle插入数据的时候自带的,无需人为添加. 我们如果想要实现控制查询数量,可以利用这个字段. 方案一: 我们可以写成 SELECT * FROM TA_新闻 WHERE ROWNUM <= 3 ORDER BY 发布时间 DESC 来控制显示三条记录. 但是,我们注意到这个ROWNUM是在插入数据时产生的,也就是说如果我们新插入一条发布时间

WPF控件保存为图片

<MetroChart:ClusteredBarChart Name="PerformanceChart" ChartTitle="员工绩效" ChartSubTitle="流出流入绩效" FontSize="14" SelectedItem="{Binding Path=SelectedItem, Mode=TwoWay}" SeriesSource="{Binding Path=Seri

WPF控件到图片的转换

在实际的项目开发中,经常需要将信息保存成图片的形式,如屏幕截图.地图快照等操作,我中最近一个项目中便有这样的需求,项目(WPF)中用到GMap.NET控件,中地图上展示一些信息,过程中可能用户需要将地图信息保存下来,也就是地图快照,我的界面如下所示: 网上查了GMap相关的资料,没有找到GMap怎么截图的方法,最后找到网友提供的方法:将WPF控件转换成图片. 具体实现如下: namespace QACDR2.Common { internal enum ImageType { Bmp, Gif,

js 日期控件 可以显示为和历

日期控件的js 1 <!-- 2 /** 3 * Calendar 4 * @param beginYear 1990 5 * @param endYear 2010 6 * @param language 0(zh_cn)|1(en_us)|2(en_en)|3(zh_tw)|4(jp) 7 * @param patternDelimiter "-" 8 * @param date2StringPattern "yyyy-MM-dd" 9 * @param

WPF 精修篇 Winform 嵌入WPF控件

原文:WPF 精修篇 Winform 嵌入WPF控件 首先 创建WPF控件库 这样就有了一个WPF界面 在wpf中增加界面等 在winform中增加WPFDLL 重新生成解决方案 在左侧工具栏 出现WPF 控件 拖到窗体 效果 原文地址:https://www.cnblogs.com/lonelyxmas/p/12075801.html

通过WinForm控件创建的WPF控件无法输入的问题

今天把写的一个WPF程序发布到别的机器上执行,发现一个比较奇怪的问题:在那个机器上用英文输入法无法输入数字,非要切换到中文输入法才行:但在我的机器上却是好好的. 最开始以为是输入法的问题,弄了好一阵子后,终于找到了原因:虽然这个程序是个WPF程序,但为了复用之前的部分代码,使用着一个WinForm的菜单控件,后续的子窗口都是通过这个WinForm菜单创建的.而用WinForm控件创建的WPF控件可能出现无法正确响应键盘事件的情况. 找到了原因后,一个常规的解决方法是:将WinForm控件换成WP

WINFORM中加入WPF控件并绑定数据源实现跨线程自动更新

1. WINFORM中添加两个ElementHost,一个放WPF的Button,一个放WPF的TextBox.其中TextBox与数据源绑定,实现跨线程也可以自动更新,而不会出现WINFORM的TextBox控件与数据源绑定后,存在子线程中更新数据源报错(跨线程更新控件)的情况. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System