2 열이있는 ultrawingrid가 있습니다. 요구 사항은 셀을 마우스 오른쪽 버튼으로 클릭 할 때 "복사"옵션을 사용하여 컨텍스트 메뉴를 여는 것입니다. 그런 다음 사용자는 "복사"를 선택하면 셀 내용을 복사해야합니다.UltraWinGrid의 열 유형 변경
클래스 "Label"을 확장하는 "ExtendedLabel"클래스가 이미 있습니다. 이 라벨은 위와 동일한 기능을합니다. 차이점은 레이블에서 오른쪽 클릭이 발생한다는 것입니다.
문제는 다음과 같습니다. 이 ExtendedLabel을 ultrawingrid의 열 데이터 유형으로 어떻게 통합 할 수 있습니까? 이것이 제가 시도한 것입니다 :
public class Content
{
public Content()
{
Item = new ExtendedLabel();
Value = new ExtendedLabel();
}
ExtendedLabel Item = new ExtendedLabel();
ExtendedLabel Value = new ExtendedLabel();
}
Content a = new Content();
a.Item.Text = "Item1"; // The ExtendedLabel has a property called "Text"
a.Value.Text = "Value1";
Content b = new Content();
a.Item.Text = "Item2";
a.Value.Text = "Value2";
List<Content> contents = new List<Content>();
contents.Add(a);
contents.Add(b);
ultrawingrid.DataSource = contents;
이제 그리드가 이와 같습니다. 내가 원하는 것을
반면Item Value
-------------------------------------------------------------
{ExtendedLabel, Text: Item1} {ExtendedLabel, Text: Value1}
{ExtendedLabel, Text: Item2} {ExtendedLabel, Text: Value2}
이었다 :
Item Value
---------------
Item1 Value1
Item1 Value1
모든이 외에도, 나는 정확히이 일을하고 있습니까? 이것이 최선의 접근 방법인가요? 그렇지 않다면, 어떻게?
TIA!
확인. 그러나 이것은 UltraGrid의 셀에 ExtendedLabel의 기능을 적용 할 것입니까? 내 셀을 마우스 오른쪽 단추로 클릭해야 컨텍스트 메뉴가 나타납니다. – Sandeep
아니요, 셀 눈금 편집기의 기능을 변경하려면 자신 만의 편집기를 만들어야합니다. 과정은 약간 복잡합니다. Infragistics 사이트의 [이 예제] (http://devcenter.infragistics.com/Support/KnowledgeBaseArticle.aspx?ArticleID=2361)를 참조하십시오. 또한 샘플을 설치 한 경우 샘플 : 사용자 정의 편집 컨트롤에서 실제 솔루션을 찾을 수 있습니다. 그러나 사용자 정의 메뉴를 추가하는 것만으로는 충분하지 않습니다. 그리드에 사용자 정의 메뉴를 쉽게 추가하고 표시하려는 오른쪽 열에 있는지 확인할 수 있습니다. – Steve
사용자 지정 레이블을 사용하는 더 간단한 방법은 2009 Volume 2에 추가 된 ControlContainerEditor를 사용하는 것입니다. http://help.infragistics.com/NetAdvantage/WinForms/Current/CLR2.0/?page=WinControlContainerEditor_Embed_Any_Control_within_WinGrid_Cell_using_UltraControlContainerEditor_Component.html – alhalama