爲什麼我不能在DataGrid
內的MenuItem中的兩個元素之間進行綁定?在同一個WPF中聲明的兩個控件之間的綁定ContextMenu MenuItem
這不是多個MenuItem之間的綁定,它與相同MenuItem的標題模板中存在的項目內的綁定有關。
在DataGrid
之外託管相同的控件時,此工作正常。但在MenuItem中,我遇到綁定錯誤「無法找到與引用綁定的源...」。當然,他們在同一個視覺樹中,可以互相引用?
請注意,這不是ElementName Binding from MenuItem in ContextMenu的重複,因爲綁定方案略有不同,並且沒有答案可解決此問題。
<DataGrid.ContextMenu>
<ContextMenu>
<MenuItem >
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<ComboBox Margin="5 0" Name="comboBox">
<ComboBoxItem>1</ComboBoxItem>
<ComboBoxItem>2</ComboBoxItem>
<ComboBoxItem>3</ComboBoxItem>
</ComboBox>
<TextBlock Margin="5 0" Text="{Binding ElementName=comboBox, Path=SelectedValue}"></TextBlock>
</StackPanel>
</MenuItem.Header>
</MenuItem>
</ContextMenu>
</DataGrid.ContextMenu>
您是否嘗試過設置上下文菜單的datacontext,如引用問題中所述? – CalebB 2015-04-02 14:48:39
@CalebB這樣做會導致您需要引用選定行的DataContext的任何其他綁定無效。 – Slugart 2015-04-02 15:01:22