我一直無法找到適用於我試圖做的XML綁定的特殊情況的東西。WPF Combobox XML綁定
我有下面的XML片段:
我想要的類型屬性在用戶控件組合框綁定,但必須通過在列表驅動的可選值的列表用戶控件。
在我的用戶,我創建可能值的列表:
<UserControl.Resources>
<x:Array x:Key="HealingComponentTypes" Type="sys:String">
<sys:String>Absolute</sys:String>
<sys:String>AbsolutePercent</sys:String>
<sys:String>RelativePercent</sys:String>
</x:Array>
</UserControl.Resources>
然後我將它們綁定到ComboBox
<GroupBox DataContext="{Binding XPath=FieldHealingComponent}" Header="Field Use" Height="328" HorizontalAlignment="Left" Margin="231,2,0,0" Name="groupBox3" VerticalAlignment="Top" Width="220">
<Grid>
<GroupBox Header="HP Healing Component" Height="101" HorizontalAlignment="Left" Margin="6,0,0,0" Name="HPFieldUseGroup" VerticalAlignment="Top" Width="192">
<Grid>
<ComboBox ItemsSource="{StaticResource HealingComponentTypes}" SelectedItem="{Binding XPath=HP/@type}" Height="23" HorizontalAlignment="Left" Margin="62,49,0,0" Name="MPBattleUseType" VerticalAlignment="Top" Width="112" />
</Grid>
</GroupBox>
</Grid>
</GroupBox>
的問題是,這並不綁定值。我在組合框下拉列表中看到了三種可能性,但無論我選擇什麼,它都不會反映回xml中。同樣,即使設置,初始值也不會顯示在組合框中。我知道基本datacontext是正確的,因爲我在groupbox中有一個標籤
<TextBox Text="{Binding XPath=HP/@amount}" Height="23" HorizontalAlignment="Right" Margin="0,16,6,0" Name="HPFieldHealingAmount" VerticalAlignment="Top" Width="112" />
它正確顯示金額。我確定這只是我不知道如何正確設置綁定。我嘗試了很多建議,這些建議顯示了我爲此搜索的時候,但都沒有工作。任何幫助,將不勝感激。謝謝
是的,沒有效果 – Megatron