문제

클래스 텍스트 compositionEventArgs를 이해하지 못합니다.

ControlText, SystemText, Text라는 유형 문자열의 멤버가 있습니다. 그런 다음 멤버 컨트롤 텍스트, SystemText 및 텍스트가 다시 포함 된 Field TextConmposistion이 있으며 SystemCompositionText 및 CompositionText 필드가 추가로 포함되어 있습니다.

public class TextCompositionEventArgs : InputEventArgs
{
  ..
  public string ControlText { get; }
  public string SystemText { get; }
  public string Text { get; }
  public TextComposition TextComposition { get; }
}

public class TextComposition : DispatcherObject
{
  ..
  public string CompositionText { get; protected set; }
  public string ControlText { get; protected set; }
  public string SystemCompositionText { get; protected set; }
  public string SystemText { get; protected set; }
  public string Text { get; protected set; }
}

두 텍스트 멤버 모두 키보드로 입력 한 텍스트가 포함되어있는 것으로 보이며 다른 모든 필드에는 빈 문자열이 포함되어 있습니다.

이 분야는 어떤 방식 으로이 분야가 다르며 무엇이 좋은가?

도움이 되었습니까?

해결책

TextCompositionEventArgs는 텍스트를 작성하는 동안 변경 사항을 처리하므로 텍스트를 다루는 많은 속성과 구체적으로 변경되는 내용과 사용 방법에 따라 처리하는 방법에 따라 다릅니다.

이해해야 할 기본 사항 :

  • 텍스트 : 여기에는 이벤트를 일으킨 실제 텍스트가 포함되어 있습니다. 일반적으로 사용자의 입력 된 텍스트

  • SystemText : 여기에는 시스템 텍스트 이벤트가 포함되어 있습니다. 즉, Alt+Letter를 누르면 여기에 이벤트가 표시됩니다. 이것은 일반적으로 텍스트 상자와 같은 컨트롤에서 텍스트에 영향을 미치지 않는 키 스트로크입니다.

  • ControlText : 이것은 제어 텍스트 이벤트입니다. 즉 : Ctrl+Letter를 누르면 여기에서 볼 수 있습니다. SystemText와 유사합니다.

일반적으로 표준 "텍스트"이벤트를 찾고 있다면 "텍스트"속성을보고 싶을 것입니다. 자세한 내용은 참조하십시오 입력 개요.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top