من توی کمبو باکس میام اطلاعات رو از دیتاگرید با کلیک کردن کاربر میبرم روی کمبوباکس
مشکل اینه که توی لیست کمبوباکس کاراکتر ها جدا جدا خورده
مثلا واحد عدد که لیست میشه توی کمبوباکس جوری لود میشه انگار که یک رشته جدا شدس
کد CS :
DENAF1399Entities dbms = new DENAF1399Entities();
private void Window_Loaded(object sender, RoutedEventArgs e)
{
var qre = dbms.Database.SqlQuery<Q_View>("SELECT * FROM Q_View");
datagrid1.ItemsSource = qre.ToList();
}
private void datagrid1_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
Q_View QVkala = datagrid1.SelectedItem as Q_View;
if (QVkala != null)
{
//combobox1.Items.Add(QVkala.NAMES[0]);
combobox1.ItemsSource = QVkala.NAMES;
}
}
برای Bind کردن اطلاعات دیتابیس به کمبوباکس در WPF میتونید از کدهای زیر استفاده کنید.
cmb.ItemsSource = database.Table.ToList();
cmb.DisplayMemberPath = "ColumnName";
cmb.SelectedValuePath = "ColumnID";
به نظرم اگر اطلاعات به درستی نمایش داده نمیشه اول یک BreakPoint روی کدهای خودتون و در خط ItemSource قرار بدید و مطمئن بشید اطلاعات از دیتابیس کامل و به صورت صحیح داره Load میشه. اگر در این قسمت مشکلی نبود میشه اطمینان داشت که اشکال از خود comboBox هست.
سلام
شما میخوای اون ردیفی که از دیتاگرید انتخاب کردی اطلاعاتش بره توی کومبوباکس؟یا کل اطلاعات جدول دیتابیس؟
اگه میخوای اطلاعات یک ردیف رو بگیری این کد رو بنویس:
private void datagrid1_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
object item = datagrid1.SelectedItem;
if (item != null)
{
int Id = Convert.ToInt32((datagrid1.SelectedCells[0].Column.GetCellContent(item) as TextBlock).Text);
var qre = dbms.Database.SqlQuery<Q_View>("SELECT * FROM Q_View where 1=1 And KalaID = " + Id);
var Name = qre.ToList();
combobox1.ItemsSource = Name;
combobox1.SelectedValuePath = "KalaID";
combobox1.DisplayMemberPath = "KalaName";
}
}
اگر میخوای همه اطلاعات دیتابیس نمایش داده بشه این کد رو استفاده کن:
private void datagrid1_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
var qre = dbms.Database.SqlQuery<Q_View>("SELECT * FROM Q_View");
var name = qre.ToList();
object item = datagrid1.SelectedItem;
if (item != null)
{
combobox1.ItemsSource = name;
combobox1.SelectedValuePath = "«KalaID";
combobox1.DisplayMemberPath = "KalaName";
}
}
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
909
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1113
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
565
- پاسخ :
1
|
تاریخ :
1403/07/13
- ساعت :
12:06:00 PM
- بازدید :
300
- پاسخ :
1
|
تاریخ :
1403/06/24
- ساعت :
08:52:00 PM
- بازدید :
272
- پاسخ :
1
|
تاریخ :
1398/09/14
- ساعت :
01:58:00 PM
- بازدید :
4221
- پاسخ :
1
|
تاریخ :
1398/09/16
- ساعت :
11:41:00 AM
- بازدید :
4242
- پاسخ :
1
|
تاریخ :
1398/09/07
- ساعت :
02:15:00 PM
- بازدید :
3836
- پاسخ :
5
|
تاریخ :
1403/05/16
- ساعت :
05:43:00 AM
- بازدید :
550
- پاسخ :
0
|
تاریخ :
1398/09/05
- ساعت :
06:04:00 PM
- بازدید :
3146
- پاسخ :
2
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
370
- پاسخ :
1
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
909
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
891
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1281
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4746
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1113
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
565
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
128
- پاسخ :
1
|
تاریخ :
1403/07/26
- ساعت :
09:00:00 PM
- بازدید :
72
- پاسخ :
0
|
تاریخ :
1403/07/13
- ساعت :
12:06:00 PM
- بازدید :
300
- پاسخ :
1
|