当前位置: 移动技术网 > 移动技术>移动开发>WP > windows phone7.1中两个新增控件

windows phone7.1中两个新增控件

2018年10月15日  | 移动技术网移动技术  | 我要评论

richtextbox
在wp7中,所有的控件都无法实现图文混排,这个控件解决了无法图文混排的问题,使微博和聊天软件不在只是文字显示那么单调了。但是这个控件目前还并不完善,只能够显示而无法进行输入,另外使用起来也比较麻烦。以下就是这个控件的使用方法:

1.       xaml中直接添加

这个控件无法显示在toolbox列表中,需要通过手工方式来自已添加。


<richtextbox width="400" height="400" background="white" isreadonly="true" fontsize="30" verticalcontentalignment="top">

                <paragraph>

                    <run foreground="red" fontstyle="italic" text="red text"/>

                </paragraph>

                <paragraph foreground="blue">

                    <run text="blue text "/>

                    <bold>this is bold</bold>

                </paragraph>

                <paragraph foreground="black">

                    <run text="black text "/>

                    <hyperlink>click here</hyperlink>

                    <bold>test bold text</bold>

                </paragraph>

                <paragraph>

                    a richtextbox with<bold>initial content</bold> in it.

                </paragraph>

       

            </richtextbox>
 

这样就实现了图文混排,以及多种文字效果的同时显示。

2.       代码实现


richtextbox rtb = new richtextbox();

            rtb.width = 400;

            rtb.height = 400;

            rtb.fontsize = 30;

            rtb.background = new solidcolorbrush(colors.white);

            rtb.verticalcontentalignment = system.windows.verticalalignment.top;

 

            paragraph parag = new paragraph();

            run run = new run();

            run.foreground = new solidcolorbrush(colors.red);

            run.text = "red text";

            parag.inlines.add(run);

            rtb.blocks.add(parag);

 

            parag = new paragraph();

            parag.foreground = new solidcolorbrush(colors.blue);

            run = new run();

            run.text = "blue text";

            parag.inlines.add(run);

 

 

            bold bold = new bold();

            bold.inlines.add("this is bold text");

            parag.inlines.add(bold);

 

            rtb.blocks.add(parag);

 

            parag = new paragraph();

            parag.foreground = new solidcolorbrush(colors.black);

            run = new run();

            run.text = "black text";

            parag.inlines.add(run);

 

            hyperlink hl = new hyperlink();

            hl.inlines.add("click here");

            parag.inlines.add(hl);

 

            bold = new bold();

            bold.inlines.add("test bold text");

            parag.inlines.add(bold);

            run = new run();

            run.text = "a richtextbox with";

            parag.inlines.add(run);

            bold = new bold();

            bold.inlines.add("initial content");

            parag.inlines.add(bold);

            run = new run();

            run.text = "in it.";

            parag.inlines.add(run);

 

            rtb.blocks.add(parag);

 

            contentpanel.children.add(rtb);
 

这两种方法实现的是同一个效果。


3.       注意事项

l 这个控件在加入到工程之前,需要在app.xaml文件的resource节中添加如下xaml,否则无法显示。


<application.resources>

        <style targettype="richtextbox">

            <setter property="fontsize" value="{staticresource phonefontsizenormal}" />

   &

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网