ورود

View Full Version : سوال: استفاده از ObservableCollection در لیست ویو



dharmaa
شنبه 20 مهر 1392, 17:29 عصر
سلام دوستان
من اومدم برای پر کردن لیست ویو از ObservableCollection استفاده کردم و حالا برای ویرایش یه سطر از این لیست ویو دچار مشکل شدم .میخام با دوبار کلیک کردن روی لیست ویو فیلدهای سطر انتخابی در تکس باکسهای مربوطه ظاهر شوند و بعد از تغییرات لازم در تکس باکسها با زدن یه دکمه محتوای جدید تکس باکسها در سطر انتخابی لیست ویو قرار بگیرن.
مرحله اول که همون قرار گرفتن فیلدهای سطر انتخابی در تکس باکسها بوده رو انجام دادم.ولی در مرحله دوم گیر کردم .رویداد کلیک دکمه رو در زیر گذاشتم .امیدوارم که یه نگاه بیندازین و برای تکمیل کردنش راهنمایی ام کنید

private void btnChange_Click(object sender, RoutedEventArgs e)
{
try
{
ObservableCollection<Detaillist> qq = new ObservableCollection<Detaillist>();
qq = (ObservableCollection<Detaillist>)lsv.Items[lsv.SelectedIndex];
qq[0].fldName = txtName.Text ;
qq[0].fldDuration = cmbDuration.Text;
//?????
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);

}
}

اینم کلاس Detaillist :

private class Detaillist
{
public int Row { get; set; }
public String fldName { get; set; }
public string fldDuration { get; set; }

}
ممنون

Amir Oveisi
شنبه 20 مهر 1392, 19:52 عصر
خوب مشخص نکردید که عمل update ای که انجام میدید کجا رو قراره update کنه؟ datasource اتون چی هست؟ کجا هست؟

dharmaa
شنبه 20 مهر 1392, 20:47 عصر
خوب مشخص نکردید که عمل update ای که انجام میدید کجا رو قراره update کنه؟ datasource اتون چی هست؟ کجا هست؟

سلام . یه دکمه Add گذاشتم که با کلیک روی ان یه سطر از لیست ویو پر میشه.
private void btnAdd_Click(object sender, RoutedEventArgs e)
{
try
{
ObservableCollection<Detaillist> tblDetail= new ObservableCollection<Detaillist>();
var obj = new Detaillist()
{
fldName = txtName.Text,
fldDuration = cmbDuration.Text,
};
tblDetail.Add(obj);
lsv.Items.Add(tblDetail);

}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);

}
}
بسیار ممنون از توجهتون.

dharmaa
یک شنبه 21 مهر 1392, 18:05 عصر
چرا کسی راهنمایی نمیکنه؟؟؟!!!!!!:ناراحت::ناراح :

dharmaa
جمعه 26 مهر 1392, 11:08 صبح
مشکل حل شد.
در تعریف کلاس Detaillist متد OnPropertyChanged رو گذاشتم . و همچنین کلاس رو هم از INotifyPropertyChanged ارث بری کردم.