0

私の DataTemplate は次のように宣言されています:

注:データ テンプレートのキーはなく、型によってバインドされます。

<DataTemplate DataType="{x:Type myType}">...
</DataTemplate>

そして、それは TabControl にバインドされています

<TabControl ItemsSource="{Binding Path=myCollection}"
            SelectedItem="{Binding Path=SelectedItem}">
    <!-- TabStripPlacement="Left" -->
    <TabControl.ItemTemplate>
        <DataTemplate>
            <TextBlock Padding="2.5"
                       Text="{Binding Path=Caption}">
                    <!--<TextBlock.LayoutTransform>
                        <RotateTransform Angle="270" />
                    </TextBlock.LayoutTransform>-->
            </TextBlock>
        </DataTemplate>
    </TabControl.ItemTemplate>
</TabControl>

ここで、実行時に、この DataTemplate をロードし、分離コードでコンテキスト メニューをグリッド (データ テンプレートの一部) にオンザフライで追加します。これ( LoadContent )を試しましたが、DataTemplateを更新していないようです。

// get the datatemplate of the view (defined in the XAML)
var key = new DataTemplateKey(typeof (myType));
var dataTemplate = (DataTemplate) FindResource(key);

// load the root control (in this case the grid)
var grid = dataTemplate.LoadContent() as DataGrid;

これによりグリッドが読み込まれ、インスタンスとプロパティに正常にアクセスできますが、プロパティを操作しても GUI に反映されません。

別の方法を教えてください。

4

0 に答える 0