Nie rozumiem klasy TextCompositionEventArgs.WPF: Nie rozumiem klasy TextCompositionEventArgs
Są to elementy typu ciąg o nazwie ControlText, SystemText, Text. Następnie znajduje się pole TextConmposistion, które samo zawiera elementy ControlText, SystemText i Text oraz dodatkowo pola SystemCompositionText i 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; }
}
Oba elementy tekstu wydają się zawierać tekst wpisany za pomocą klawiatury, wszystkie pozostałe pola zawierają puste ciągi.
W jaki sposób te pola różnią się i do czego służą?
Czy wiesz, dlaczego ControlText, SystemText, Text są duplikowane/redundantne w klasie TextCompositionEventArgs? – codymanix
Nie są. Na przykład ControlText to test, który ma miejsce po naciśnięciu CTRL. Te naciśnięcia klawiszy nie pojawią się w tekście. –
Edytowałem moje pytanie i wstawiłem kod, abyś mógł zobaczyć, co mam na myśli z duplikatem/nadmiarowym. – codymanix