사용자 지정 DataGridTextColumn
을 추가하여이 셀에서 내용이 변경 될 때 이벤트를 발생시킬 수 있습니다.DataGridTextColumn에 이벤트 또는 명령 추가
참고 :
나는 것을 알고이있는 DataGridTemplateColumn
를 사용하지 않습니다. 나는 우리가 사용하는 텍스트 컬럼과 함께 많은 기능이 있기 때문에 내 자신의 텍스트 컬럼을 만들고 싶다.
그래서 간단하게 이벤트를 사용자 정의 컨트롤에 추가하기로 결정했습니다. 별로. 음, AddHandler
또는 RemoveHandler
방법이 없다는 것을 알 수 있습니다.
내가 어디로 잘못 가고 있는지 설명해주십시오.
코드 :
public static readonly RoutedEvent TextChangedEvent =
EventManager.RegisterRoutedEvent("TextChanged", RoutingStrategy.Bubble,
typeof (RoutedEventHandler),
typeof (DataGridTextChangedEventColumn));
public event RoutedEventHandler TextChanged
{
add { AddHandler(TextChangedEvent, value); }
remove { RemoveHandler(TextChangedEvent, value); }
}
private void AddHandler(RoutedEvent textChangedEvent, RoutedEventHandler value)
{
this.TextChanged += (s, e) => textChangedEvent;
}
감사합니다.
고맙습니다. 유일한 것은 'GenerateElement'에서 'GetBinding'을 입력하면 나타나는 것입니다. 매핑이 누락 되었습니까? – JamTay317
@ JamTay317 오류입니다. 나는이 스 니펫을 내가 작성한 클래스에서 복사 했으므로 그 메소드를 삭제하지 않았다. 원하는 경우 DataGridTextColumn의 기본 동작은보기 모드에있을 때 TextBlock을 반환하기 때문에 생략 할 수 있습니다. – CiccioRocca
감사합니다. 나는 그것을 삭제했습니다 – JamTay317