PDA

View Full Version : سوال: چطوری لیست ویو رو به 2 تا از فیلدهای جدول بایند کنم؟



mehrzad_ali
شنبه 25 تیر 1390, 14:26 عصر
سلام

توی لیست ویو نمیشه عین ویندوزی خاصیت dataMember و displayMember رو به لیست ویو بدیم؟
می خوام وقتی روی یک سطر کلیک کرد که به خاصیت Name بایند شده خاصیت Code اون رو بدست بیارم

مهدی فرزاد
یک شنبه 26 تیر 1390, 01:28 صبح
سلام
کی گفته نمیشه نمیشه؟
<ListView DisplayMemberPath="{Binding Name}" SelectedValuePath="{Binding ID}" />

mehrzad_ali
یک شنبه 26 تیر 1390, 22:21 عصر
ممنون چطوری به اونا دسترسی داشته باشم selectedItem برای display هست selectedValue برای ValuePath???

مهدی فرزاد
دوشنبه 27 تیر 1390, 10:28 صبح
سلام
بله selectedItem آیتم انتخاب دشه رو بر میگردونه و SelectedVallue مقدار مورد نظر که از ValuePatch مقدار دهی شده

mehrzad_ali
سه شنبه 28 تیر 1390, 17:47 عصر
ممنونم از جوابتون
من با linq سلکت می کنم می خواستم ببینم توی کوئزی چطوری id ,family رو برگردونم توی لیست ویو ؟
من این کد رو نوشتم ولی فامیلی رو نشون نمیده توی لست ویو
contactDataClassesDataContext cd = new contactDataClassesDataContext();
var query = from c in cd.Ccontacts
select c;

UscListContact.ItemsSource = query;
UscListContact.DisplayMemberPath = "Family";
UscListContact.SelectedValuePath = "ID";

مهدی فرزاد
سه شنبه 28 تیر 1390, 18:09 عصر
کدتون مشکلی نداره
چک کنید ببینید اسم فیلد Family رو درست نوشتید؟

mehrzad_ali
سه شنبه 28 تیر 1390, 18:28 عصر
نه فیلدم درسته من امدم از چک باکس هم توی لیست ویو استفاده کردم که زمان اجرا این ارور رو میده
Cannot set both DisplayMemberPath and ItemTemplate.
حالا راحی نسیت بشه از هردوی اینا استفاده کرد ؟

مهدی فرزاد
دوشنبه 03 مرداد 1390, 08:05 صبح
سلام

شما باید برای ListBox یا ListView خودتون DataTemplate تعریف کنید که توی اون یک چک باکس باشه و خاصیت Content اون رو Bind کنید به فیلد مورد نظر
مثال
<ListBox x:Name="listBox" Height="327.195">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<CheckBox x:Name="checkBox" Content="{Binding Family}" VerticalAlignment="Center"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>