0

私は TreeView を持っており、それにバインドされている Linq to SQL データベースに子を追加できるようにしたいと考えています。

私が考えることができる最良の方法は(私の頭の上から)、ユーザーに親ノードを右クリックさせ、コンテキストメニューから新しい項目を追加するオプションを持たせることです。

コンテキスト メニューを追加しましたが、バックエンドでプログラムしようとすると、関連付けられたイベント ハンドラがないと表示されます。

        <TreeView Name="TreeView1" Margin="3" ItemsSource="{Binding ElementName=ManufacturerWarranty, Path=ManufacturerQuery, UpdateSourceTrigger=PropertyChanged}">
            <TreeView.ItemTemplate>
                <HierarchicalDataTemplate ItemsSource="{Binding Path=WarrantyList}">
                    <TextBlock Name="txtManufacturerName" Text="{Binding Path=ManufacturerName}">
                        <TextBlock.ContextMenu>
                            <ContextMenu>
                                <MenuItem Name="mnuAddRecord" Header="Add Year Record"></MenuItem>
                            </ContextMenu>
                        </TextBlock.ContextMenu>
                    </TextBlock>
                    <HierarchicalDataTemplate.ItemTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding Path=Years}">
                                <TextBlock.ContextMenu>
                                    <ContextMenu>
                                        <MenuItem Name="mnuDelRecord" Header="Remove Year Record"></MenuItem>
                                    </ContextMenu>
                                </TextBlock.ContextMenu>
                            </TextBlock>
                        </DataTemplate>
                    </HierarchicalDataTemplate.ItemTemplate>
                </HierarchicalDataTemplate>
            </TreeView.ItemTemplate>
        </TreeView>

これを行う正しい方法は何ですか?

4

1 に答える 1

0

add handler実行する場所を忘れましたclick of menuItem

<ContextMenu>
  <MenuItem Name="mnuAddRecord" Header="Add Year Record" Click="HandlerInClass"/>
</ContextMenu>
于 2012-10-24T16:05:33.657 に答える