http://hi.baidu.com/aqiang000000/blog/item/05507e3692c9b4daa3cc2ba3.html

功能实现主要分三步:
1、添加两个引用:WindowsFormsIntegration.dll (负责整合WPF和Windows)、System.Windows.Forms.
2、在 XAML文件中添加两个引用(粗体部分):

如何在WPF中调用Winform控件 (转)<Window x:Class="CrossBowDemo.MainWindow"
如何在WPF中调用Winform控件 (转)     xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
如何在WPF中调用Winform控件 (转)     xmlns:wf ="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
如何在WPF中调用Winform控件 (转)     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
如何在WPF中调用Winform控件 (转)     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
如何在WPF中调用Winform控件 (转)     Title="Hosting Windows Forms Control In WPF"
如何在WPF中调用Winform控件 (转)     Height="300"
如何在WPF中调用Winform控件 (转)     Width="650"
如何在WPF中调用Winform控件 (转)     ResizeMode="NoResize"
如何在WPF中调用Winform控件 (转)     Loaded="WindowLoadedHandler"
如何在WPF中调用Winform控件 (转)     >
如何在WPF中调用Winform控件 (转)
如何在WPF中调用Winform控件 (转)</Window>
如何在WPF中调用Winform控件 (转)

3、在XAML编码区实现你想添加的控件:

    原文添加的是 DataGridView控件:

如何在WPF中调用Winform控件 (转)
如何在WPF中调用Winform控件 (转)   <wfi:WindowsFormsHost>
如何在WPF中调用Winform控件 (转)       
<!-- Set some properties on Windows Forms control in Xaml -->
如何在WPF中调用Winform控件 (转)      
<wf:DataGridView x:Name="dataGridView" Dock="Fill" SelectionMode="FullRowSelect"/>
如何在WPF中调用Winform控件 (转)    
</wfi:WindowsFormsHost>


效果图:
如何在WPF中调用Winform控件 (转)


本人添加的是 NumericUpDown控件:

如何在WPF中调用Winform控件 (转)    <Grid Height="0" Margin="146,0,0,116" MinHeight="20" MinWidth="20" Name="grid1" VerticalAlignment="Bottom" HorizontalAlignment="Left" Width="50">
如何在WPF中调用Winform控件 (转)      
<wfi:WindowsFormsHost>
如何在WPF中调用Winform控件 (转)        
<wf:NumericUpDown x:Name="nupCounter" Maximum="100"></wf:NumericUpDown>
如何在WPF中调用Winform控件 (转)      
</wfi:WindowsFormsHost>
如何在WPF中调用Winform控件 (转)    
</Grid>


效果图:

如何在WPF中调用Winform控件 (转)

在本人的代码中Grid的作用相当于Web页面中用来布局的Table。 此处加上Grid是为了方便移动控件的位置。

相关文章: