在WFP中完美使用winform的控件

这个东西的确 比较激动人心

因为wpf毕竟面世不久,很多控件还都没有,比如日期控件,报表控件等等很多,虽然现在wpftoolkit和wpf4.0已经添加很多控件,但是在wpf3.0中如果能使用winform的控件还是很有意义的

主要是使用这个WindowsFormsHost类,
还是wpf的添加winform的控件集引用
然后在xaml页面先添加要使用的winform的控件集
比如这样: xmlns:win="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"

然后添加
WindowsFormsHost标签,在里面我使用winform的中日期控件
 <WindowsFormsHost Height="100" Name="windowsFormsHost1" Width="200" >
            <win:DateTimePicker  Name="dt"></win:DateTimePicker>
        </WindowsFormsHost>

在后台这样
  DateTimePicker dt = windowsFormsHost1.Child as DateTimePicker;
 System.Windows.MessageBox.Show(dt.Text);
这样就得到的winform的日期控件,就可以正常使用了。和winform下一模一样


这样就解决了不少问题,比如报表控件,datagrid控件,太多太多。

总结的大概步骤
1.在wpf项目中添加要用的winform的dll集合引用
2.在xaml页面注册该集合
3.使用
WindowsFormsHost 包含winform控件
4.后台使用的时候转换成正确的winform控件
就可以使用了

本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。

原文地址:https://www.cnblogs.com/zjypp/p/2319323.html