TextChangedEventArgs.Changes 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
발생한 변경 내용에 대한 정보를 포함하는 개체의 컬렉션을 가져옵니다.
public:
property System::Collections::Generic::ICollection<System::Windows::Controls::TextChange ^> ^ Changes { System::Collections::Generic::ICollection<System::Windows::Controls::TextChange ^> ^ get(); };
public System.Collections.Generic.ICollection<System.Windows.Controls.TextChange> Changes { get; }
member this.Changes : System.Collections.Generic.ICollection<System.Windows.Controls.TextChange>
Public ReadOnly Property Changes As ICollection(Of TextChange)
속성 값
발생한 변경 내용에 대한 정보를 포함하는 개체의 컬렉션입니다.
설명
컨트롤을 연속으로 변경할 때마다 하나의 TextChange 개체가 있습니다. 기본 문서의 구조를 변경해야 하는 경우 이벤트가 한 번 발생하는 TextChanged 동안 둘 이상의 연속 변경이 발생할 수 있습니다.
예를 들어 문자열이 RichTextBox 들어 있다고 가정합니다."This is some text."RichTextBox.Document<Paragraph><Run>This is some text.</Run></Paragraph> 사용자가 단어를 "is some"굵게 표시하면 기본 FlowDocument 구조가 변경됩니다 <Paragraph><Run>This </Run><Run FontWeight="Bold">is some</Run><Run> text.</Run></Paragraph>. 실제로 사용자의 작업으로 인해 발생한 네 가지 변경 내용이 있습니다.
<Run>기호가 제거되고 단어This앞에 다시 추가됩니다.기호는
</Run><Run>단어This다음으로 추가됩니다.기호는
</Run><Run>단어some다음으로 추가됩니다.</Run>기호가 제거되고 단어Text후에 다시 추가됩니다.
일반적으로 다음은 항상 true입니다.
변경 내용이 발생하면 문서가 유효한 상태가 될 수 있습니다.
컬렉션은 컨트롤에서 변경이 발생한 위치와 관련하여 연속적으로 순서가 지정됩니다. 예를 들어 TextChange 위치 2의 변경 사항을 나타내는 개체는 위치 10의 변경 사항을 나타내는 개체 앞에 TextChange 있습니다.
두 TextChange 개체가 겹치는 영역을 나타내지 않습니다. Offset 값과 한 TextChange 개체의 AddedLength 값은 항상 컬렉션에 있는 다음 TextChange 개체의 Offset 값보다 작거나 같습니다. 마찬가지로 Offset 값과 한 TextChange 개체의 RemovedLength 값은 항상 컬렉션에 있는 다음 TextChange 개체의 Offset 값보다 작거나 같습니다.
순 변경 내용이 없는 것 같더라도 컬렉션은 발생한 변경 내용을 반영합니다. 앞의 예제에서 첫 번째 또는 네 번째 변경은 각각 단순히 제거되고 기호와
</Run>기호를 다시 추가<Run>하기 때문에 순 변경을 초래하지 않습니다. 그러나 기호는 실제로 제거되고 추가되었으므로 컬렉션에 포함됩니다.
TextChanged 속성 변경 Changes 의 결과로 이벤트가 발생하는 경우 빈 컬렉션입니다. 앞의 예제에서 사용자가 전체 문자열
Changes 는 .NET Framework 버전 3.5에 도입되었습니다. 자세한 내용은 버전 및 종속성을 참조하세요.