我有这种方法
public List<Trgovina> getAllStores()
{
using (IDbConnection connection = new MySqlConnection(Helper.CnnVal("dbConn")))
{
return connection.Query<Trgovina>("TrgovineViewAll", null,
commandType: CommandType.StoredProcedure
)
.ToList();
}
}
它从数据库获取所有商店信息。它在启动时调用的方法
public MainWindow()
{
InitializeComponent();
List<Trgovina> stores = new List<Trgovina>();
stores = da.getAllStores();
comboxStoreNames.ItemsSource = stores;
}
商店充满了数据。虽然数据不是我需要的格式。它只显示
{Project_Budget.Engine.Trgovina}
。我需要的信息就在里面。如何从那里以字符串格式获取数据,以便可以在组合框中显示它? 最佳答案
您可以覆盖ToString
public override string ToString() => ThePropertyOrExpressionToBeDisplayed;
或者,如果您正在使用数据绑定,请设置ComboBox的
DisplayMember
和ValueMember
属性。 DisplayMember
是要显示的属性。 ValueMember
通常是一个ID或键属性。您可以通过SelectedValue
访问后者,而可以通过SelectedItem
获取整个对象,并通过SelectedIndex
获取其索引。注意,在您的情况下,ComboBox使用的是
ToString
。但是,由于继承自System.Object
的默认实现是返回类型名称,因此无法获得足够的显示。