글쎄, 내 질문은 바보 같지만 결과가 전혀 다른 많은 것을 시도했다.ComboBox (C#)의 내용 표시 특정 필드 표시
필자는 메인 폼에 ComboBox를 가지고 있는데, 필자는이 데이터 소스를 Filters 클래스에 선언 된 public readonly List PriceChanges 목록에 연결하려고합니다. 문제는 없지만 설명 필드를 나열하고 싶습니다.
"설명"문자열을 DisplayMember 특성에 성공적으로 할당하려고했습니다. My ComboBox는 각 항목에 대해 "BusinessLogic.PriceChange"만 나열합니다. BusinessLogic은 내 네임 스페이스의 이름이고 PriceChange 클래스는 클래스입니다.
감사합니다.
감사
List 객체를 선언의public mainFrm()
{
InitializeComponent();
prodFilter = new Filters();
cbPriceChanges.DataSource = prodFilter.PriceChanges;
cbPriceChanges.DisplayMember = "Description"
}
코드의 일부입니다 내 기본 폼의 코드의 일부
public enum PriceChangeTypes
{
No_Change,
Increased,
Decreased,
All
}
public class PriceChange
{
public String Description;
public readonly PriceChangeTypes Type;
public delegate bool ComparisonFuntionDelegate(Decimal a);
public readonly ComparisonFuntionDelegate ComparisonFunction;
public PriceChange(String Description, PriceChangeTypes type , ComparisonFuntionDelegate CompFunc)
{
this.Description = Description;
Type = type;
ComparisonFunction = CompFunc;
}
}
public class Filters
{
public readonly List<PriceChange> PriceChanges = null;
public Filters()
{
PriceChanges = new List<PriceChange>();
PriceChanges.Add(new PriceChange("No Change", PriceChangeTypes.No_Change, PriceChange => PriceChange == 0));
PriceChanges.Add(new PriceChange("Increased", PriceChangeTypes.Increased, PriceChange => PriceChange > 0));
PriceChanges.Add(new PriceChange("Decreased", PriceChangeTypes.Decreased, PriceChange => PriceChange < 0));
PriceChanges.Add(new PriceChange("All", PriceChangeTypes.All, a => true));
}
}
설명, 유형, ComparisonFuntionDelegate하고있다 된 toString 기본 값을 받고있어 ComparisonFunction은 실제로 private이거나 속성으로 만들어야합니다. –