当前位置:编程学习 > C#/ASP.NET >>

急求!!!WPF中的richtextbox如何更新选中区域 求大侠指导

在写wpf的邮箱系统,邮件正文部分是用的richtextBox,现在想要通过循环获取每个字符的粗体、斜体等的设置,所以需要按照循环变量的变化来选中下一个字符,我写的方式简缩为如下:
bool bold=false;
TextPointer textStart = richtextBox.Document.ContentStart;
TextPointer textOffset = richtextBox.Document.ContentEnd;
string message = textRange.Text;
//获取第一个字符的offset
textOffset = textStart.GetPositionAtOffset(1);
//选中第一个字符(这里的代码不知道有没有错 求指教)
richtextBox.Selection.Select(textStart,textOffset);
//第一个字符是否粗体
bold=richtextBox.Selection.GetPropertyValue(TextElement.FontWeightProperty).Equals(FontWeights.Bold) ? true : false;
for (int count = 2; count <=message.Length; count++)
                {
                    // Select current character
                    textStart = textStart.GetPositionAtOffset(1);
                    textOffset = textStart.GetPositionAtOffset(1);
                    richtextBox.Selection.Select(textStart, textOffset);
                    .......再次同上获取是否为bold粗体....
}
但是这样调试的结果是 如果第一个字符选择了粗体 那么后面的bold都是true 如果第一个是false 那后面的也都是false了 不明白怎么回事 求高手指导! 是不是选择语句错了? 设置粗体的时候是这样设置的:this.richtextBox.Selection.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold); wpf richtextBox
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,