关于数据绑定的SelectedItem
元素,我知道这是一个{@ 1}}几乎是一个长期存在的问题,但是我现在也正为此问题苦苦挣扎。
XAML:
ComboBox
隐藏代码:
<ComboBox x:Name="Price_List" BorderBrush="Gainsboro" Margin="5" Grid.Column="1" Grid.Row="0" Grid.ColumnSpan="2" Background="{x:Null}"/>
Using Sql As New SqlClient.SqlConnection(ConnStr)
Sql.Open()
Using sqlcmd As New SqlClient.SqlCommand(SQLQuery, Sql)
Dim DA As New SqlDataAdapter
Dim DS As New DataSet
Dim DT As New DataTable
With DT.Columns
.Add("price_list")
.Add("description")
End With
With Price_List
.ItemsSource = DT.DefaultView
.DisplayMemberPath = "description"
.SelectedValuePath = "price_list"
End With
DA.SelectCommand = sqlcmd
DA.Fill(DT)
End Using
End Using
可以正常工作,SelectedValue
中的值Debug.Print
证明了这一点,但是每次更改都会返回两个值(一个SelectionChanged
) -为什么会这样?
很明显,在这方面,NULL
与SelectedValue
总是不同的,那么如何强制WPF显示它?
答案 0 :(得分:1)
如果将其移回,请在Main_Tabs_SelectionChanged中插入一些断点,并确保代码仅执行一次。