次のような XAML スニペットがあります。
<UserControl.Resources>
<DataTemplate DataType="{x:Type ns:MyObject}">
<Grid>
/// Stuff
</Grid>
<GridView x:Name="MyGrid" />
</DataTemplate>
</UserControl.Resources>
<ns:MyObject x:Name="MyLovelyObject" />
ここで、「MyGrid」へのポインターが必要です。ただし、WPF の本質的な設計により、コード レベルで "MyGrid" に簡単にアクセスすることはできません。だから、私は代替手段を探しています。以下は私がやりたいことですが、構文を完全に理解することはできません (注: GridView は MyObject のパブリック属性です):
<UserControl.Resources>
<DataTemplate DataType="{x:Type ns:MyObject}">
<Grid>
/// Stuff
</Grid>
<GridView Binding="{Path=GridView}" />
</DataTemplate>
<GridView x:Key="GridViewTemplate">
/// Lots of stuff
</GridView>
</UserControl.Resources>
<ns:MyObject x:Name="MyLovelyObject" GridView="{Binding GridViewTemplate}" />
とにかく、それは明らかにうまくいきません。基本的に、XAML には次の 2 つの目標があるようです: 1. DataTemplate を使用して MyObject を作成する 2. 別の DataTemplate を使用して MyObject.GridView を初期化する (注: GridView は GUI オブジェクトです)
これに関する何か入力はありますか?
ありがとう。