C# WindowsFormDataGridView重叠WPF控件
我在使用WinFormHost的WPF应用程序中使用WindowsForm控件,即DataGridView。现在的问题是,DataGridView位于WPF Scrollviewer控件内,因此每当我在DataGridView中有数据并且其高度自动增加时,每当我滚动或过长时,它总是与所有WPF控件重叠。请问我能做什么,我也试过ZIndex,但不起作用。如下图所示C# WindowsFormDataGridView重叠WPF控件,c#,wpf,winforms,xaml,datagridview,C#,Wpf,Winforms,Xaml,Datagridview,我在使用WinFormHost的WPF应用程序中使用WindowsForm控件,即DataGridView。现在的问题是,DataGridView位于WPF Scrollviewer控件内,因此每当我在DataGridView中有数据并且其高度自动增加时,每当我滚动或过长时,它总是与所有WPF控件重叠。请问我能做什么,我也试过ZIndex,但不起作用。如下图所示 这是WPF托管非WPF可视组件时的一个众所周知的问题。这是由于托管组件接收到一个专用的窗口句柄,该句柄与WPF可视化树分开呈现 以下
这是
WPF
托管非WPF
可视组件时的一个众所周知的问题。这是由于托管组件接收到一个专用的窗口句柄,该句柄与WPF
可视化树分开呈现
以下是解决问题的几个选项:
WinForm
的数据网格控件有特殊原因,只需移动到WPF
的数据网格控件,即可解决所有问题WPF
表单上的任何其他相关组件)交互时,可以在WPF
表单中创建一个透明区域,并操纵WinForms
网格。这是丑陋和复杂的,但它可能会工作WPF
的滚动条,只需让用户与WinForms
数据网格上的滚动条交互即可非常感谢你的评论,但我已经试过了。我之所以使用WinFormDataGridView,是因为我可以编写代码打印DataGrid中的所有值,并导出到Excel。但是,如果你有一种方法,我可以用WPF DataGrid完成所有这些,请帮我看一下,谢谢。你应该能够使用表示行的
类,然后用该类的实例填充ObservableCollection
,并将其绑定到DataGrid
。关于导出到Excel
,如果您使用的是csv
文件,那么它只是将类
的每个实例的值串联起来并将它们写入一个文件,但是,如果您需要xlsx
文件,然后,您需要使用一个office
API将类
实例导出到Excel
。我可以使用WPF DataGrid,但是您所说的API,我不知道API的内容。如果你能帮我,我会很感激。。。谢谢…您可以查看以下链接以编程方式使用office产品: