Использование общего списка
Здравствуйте, как централизовать эту часть кода с помощью общего списка.
DG.DataSource = null; var source = new BindingSource(); source.DataSource = Lcls.lc; DG.DataSource = source;
это мой исходный код, который я вставляю, и моя проблема локализована в файле MyData. cs
Файл mydata.в CS
class MyData:clslistes<Object> { public void RemplirDataGridList(DataGridView DG,clslistes<Object> Lcls) { DG.DataSource = null; var source = new BindingSource(); source.DataSource = Lcls.lc; DG.DataSource = source; } }
clslistes.в CS
abstract class clslistes<t> { public static List<t> lc = new List<t>(); public clslistes() { }
clsClient. cs
class clsClient:clslistes<clsClient> { private int _NumCl; public int Numero { get { return _NumCl; } set { _NumCl = value; } } private string _NomCl; public string GETSETNomCl { get { return _NomCl; } set { _NomCl = value; } } private string _telCl; public string GETSETTelCl { get { return _telCl; } set { _telCl = value; } } private string _adressCl; public string GETSETadressCl { get { return _adressCl; } set { _adressCl = value; } } private string _EmailCl; public string GETSETEmailCl { get { return _EmailCl; } set { _EmailCl = value; } } private string _VilleCl; public string GETSETvilleCl { get { return _VilleCl; } set { _VilleCl = value; } } private string _paysCl; public string GETSETpaysCl { get { return _paysCl; } set { _paysCl = value; } } public clsClient() {} public clsClient(int NumCl, string NomCl, string telCl, string adressCl, string EmailCl, string VilleCl, string paysCl) { this._NumCl = NumCl; this._NomCl = NomCl; this._adressCl = adressCl; this._telCl = telCl; this._EmailCl = EmailCl; this._VilleCl = VilleCl; this._paysCl = paysCl; } public bool rechercheClient(int num) { foreach (clsClient cl in lc) { if (cl.Numero == num) return true; } return false; } public bool ajoutclient(clsClient cl) { if (this.rechercheClient(cl.Numero) == false) { lc.Add(cl); return true; } return false; } private int rechercheclientposit(int num) { clsClient cl = new clsClient(); for (int i = 0; i < lc.Count; i++) { cl = (clsClient)lc[i]; if (cl.Numero == num) { return i; } } return -1; } public bool modifierclient(int numcl,clsClient Ncli) { if (this.rechercheclientposit(numcl) == -1) return false; else { lc[rechercheclientposit(numcl)] = Ncli; return true; } } public bool supprimerClient(int num) { if (this.rechercheclientposit(num) == -1) return false; else { lc.RemoveAt(rechercheclientposit(num)); return true; } } }
зная, что ошибка локализована именно в этой строке файла MyData. cs
source.DataSource = Lcls.lc
Что я уже пробовал:
я пытаюсь изменить входные параметры
clslistes<Object> Lclsс
clslistes<T> Lclsно это показывает ошибку
public void RemplirDataGridList(DataGridView DG,clslistes<Object> Lcls) { DG.DataSource = null; var source = new BindingSource(); source.DataSource = Lcls.lc; DG.DataSource = source; }
[no name]
Список уже является универсальным классом, почему вы пытаетесь создать универсальный класс из универсального класса?
johannesnestler
просто комментарий: Я бы настоятельно рекомендовал вам переосмыслить свои соглашения об именах - может быть, на что-то большее .Нет-иш? У меня рак глаз, когда я читаю ваш код ;)
Rahul VB
:) ха-ха-ха, я согласен