WPF RichTextBox에서 텍스트 가져오는 방법
😢상황
- WPF에서
RichTextBox
를 사용하여 텍스트를 입력받았지만,
.Text
속성이 없어 입력된 문자열을 직접 가져올 수 없는 문제 발생 - 일반
TextBox
와 달리RichTextBox
는FlowDocument
구조로 동작하기 때문
🛠️해결법
TextRange
를 이용해 텍스트 추출
TextRange range = new TextRange(
richTextBox.Document.ContentStart,
richTextBox.Document.ContentEnd
);
string text = range.Text;
💡
TextRange
는 문서의 시작과 끝 사이의 모든 텍스트를 가져옴
💡 줄바꿈, 공백 등도 포함되므로 후처리가 필요한 경우가 있음
✅정리: 왜 이게 효과 있었는가?
RichTextBox
는TextBox
와 달리 문서 기반 구조(FlowDocument)를 사용- 단순한
.Text
속성이 없기 때문에,TextRange
로 시작~끝 범위를 지정해 텍스트 추출해야 함 - 이 방식은 모든 텍스트 요소를 포함하면서도 직관적인 방법