我已经使用mvvm模型和连接到azure的sql数据库创建了一个应用程序。当我试图获取数据库中的信息时,我的列表框会检测集合中有多少对象,并显示列表的路径而不是内容。
我已经尝试过我的sql查询,这只会很好地返回数据。
查看:
xmlns:local="clr-namespace:Lance_Theunis_r0702301_2ITFA"
xmlns:viewmodel="clr-
namespace:Lance_Theunis_r0702301_2ITFA.ViewModel"
mc:Ignorable="d"
Title="MainWindow" Height="450" Width="800">
<Window.Resources>
<viewmodel:WagenViewModel x:Key="WagenViewModel" />
</Window.Resources>
<DockPanel LastChildFill="True" DataContext="{StaticResource
WagenViewModel}">
<StackPanel DockPanel.Dock="Left" Width="333px">
<ListBox ItemsSource="{Binding Path=Wagens}" />
</StackPanel>视图模型:
namespace Lance_Theunis_r0702301_2ITFA.ViewModel
{
class WagenViewModel : BaseViewModel
{
public WagenViewModel()
{
LeesWagens();
}
private ObservableCollection<Wagen> wagens;
public ObservableCollection<Wagen> Wagens
{
get
{
return wagens;
}
set
{
wagens = value;
NotifyPropertyChanged();
}
}
private void LeesWagens()
{
DataService wagenDS = new DataService();
wagens = new ObservableCollection<Wagen>(wagenDS.GetWagens());
}
}
}DataService类:
namespace Lance_Theunis_r0702301_2ITFA.Model
{
class DataService
{
private static string connectionString =
ConfigurationManager.ConnectionStrings["azure"].ConnectionString;
private static IDbConnection db = new SqlConnection(connectionString);
public List<Wagen> GetWagens()
{
string sql = "Select naam from Wagen order by naam";
return (List<Wagen>)db.Query<Wagen>(sql);
}
}
}没有错误消息。列表框显示(Lance_Theunis_r0702301_2ITFA.Model.Wagen)而不是例如(bmw m3)。
发布于 2019-08-07 22:12:36
将DisplayMemberPath属性设置为"naam“或您要显示的Wagen类的属性名称:
<ListBox ItemsSource="{Binding Path=Wagens}" DisplayMemberPath="naam" />https://stackoverflow.com/questions/57396292
复制相似问题