WPF如何从用户控件内的另一个控件获取控件?

时间:2019-11-27 14:13:16

标签: c# wpf xaml binding controls

我目前正在尝试在WPF中获得一个DataGrid控件,以将其作为CommandParameter发送。

结构如下:

主要XAML:

<Usercontrol>
    <DataGrid x:Name="dataGrid"/>
    <view:AnotherUsercontrol/>
</Usercontrol>

AnotherUsercontrol XAML:

<StackPanel>
    <Button Command="{Binding MyCommand}
            CommandParameter="{Binding ElementName=dataGrid}" 
            Content="Export"/>
</StackPanel>

它不起作用。该命令有效,但是我没有得到参数。我在AnotherUsercontrol.cs后面的代码中尝试了propdp,但结果相同:

主要XAML:

<Usercontrol>
    <DataGrid x:Name="dataGrid"/>
    <view:AnotherUsercontrol DataGrid="{Binding ElementName=dataGrid}"/>
</Usercontrol>

AnotherUsercontrol XAML:

<StackPanel>
    <Button Command="{Binding MyCommand}
            CommandParameter="{Binding DataGrid}" 
            Content="Export"/>
</StackPanel>

问题是我需要使用控件View:AnotherUsercontrol,因为它在我的所有视图(很多视图)中都使用过。

关于它如何工作的一些想法?

问候

PD:我正在使用MVVM,是的,我需要像发送参数一样发送控件,因为我正在使用Infragistics,并且他们使用DataPresenter中的XamDataGrid来将其导出到Excel格式。

0 个答案:

没有答案