我在 SQL Server 中有一个名为Charges的数据库表,它具有三列(ChargeName、Charge、Type)。这是下面填充表的快照:
我正在使用扩展 WPF 工具包的CheckComboBox控件。我想从下拉列表中打印选定的项目。
这是我的 XAML 代码文件
<Window x:Class="RTS_Management.TestScreen"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:xctk="clr-namespace:Xceed.Wpf.Toolkit;assembly=Xceed.Wpf.Toolkit"
Title="TestScreen" Height="300" Width="300">
<Grid>
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<TextBlock Margin="5">Purpose: </TextBlock>
<xctk:CheckComboBox x:Name="_combo"
HorizontalAlignment="Center"
VerticalAlignment="Center"
DisplayMemberPath="ChargeName"
ValueMemberPath="ChargeName"
/>
<Button Name="display"
Click="display_Click"
Margin="5">
Display Selected
</Button>
</StackPanel>
</StackPanel>
</Grid>
这是文件背后的代码
using MessageBox = System.Windows.MessageBox;
namespace RTS_Management
{
/// <summary>
/// Interaction logic for TestScreen.xaml
/// </summary>
public partial class TestScreen : Window
{
bool handle = true;
public TestScreen()
{
InitializeComponent();
BindTreatmentComboBox(_combo);
}
// displaying data in ComboBox
public void BindTreatmentComboBox(CheckComboBox comboBoxName)
{
string ConString = ConfigurationManager.ConnectionStrings["RTS_ManagementModel"].ConnectionString;
string CmdString = string.Empty;
SqlConnection conn = new SqlConnection(ConString);
try
{
conn.Open();
CmdString = "SELECT ChargeName "
+ "FROM Charges ";
SqlDataAdapter da = new SqlDataAdapter(CmdString, conn);
DataSet ds = new DataSet();
da.Fill(ds, "Charges");
comboBoxName.ItemsSource = ds.Tables["Charges"].DefaultView;
//comboBoxName.ItemsSource = ds;
}
catch (Exception ex)
{
Xceed.Wpf.Toolkit.MessageBox msg = new Xceed.Wpf.Toolkit.MessageBox();
msg.ShowMessageBox(ex.Message.ToString());
}
finally
{
conn.Close();
}
}
private void display_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show(_combo.SelectedValue.ToString());
}
}
}
我错过了什么?伙计们帮助我,我不擅长 WPF。