WPF,制作填空题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF,制作填空题相关的知识,希望对你有一定的参考价值。

现想通过WPF实现填空题的效果,就像在Word中一样,如图中上半部分,即:
①题目文字和答案文字均可自动换行
②题目文字和答案文字紧密相连
③题目文字可跨行选择、不可编辑
④答案文字可跨行选择、编辑

目前使用WrapPanel内填Label和TextBox,可以实现图中下面的效果,但无法完成第②条
希望能有更完美的解决方案

参考技术A 你那个下划线是不是设置textbox的borderthickness和borderbrush弄的呀。你要将label和textbox文字贴紧最方便的做法就是设置textbox的padding值。追问

wpf里面对textbox做个Style就好了
主要问题是WrapPanel只能做到控件间的自动换行,不能同时做到控件间和控件内的自动换行

追答

你说的没错。那你可以尝试下用Richtextbox做下。这样里面也不需要再用textbox了。里面的文本可以直接设置下划线。

追问

那怎么做到题目文字不可改呢?

追答

RichTextBox里不仅仅是可以放文字,它里面可以放图片,控件和UserControl的。也就是说题目文字的话你照样可以使用Label。

追问

问题是题目文字也必须得是流式的。。。使用Label只能使得题目文字占据整块的空间,而不能和上下文很好地结合。

追答

如果是流式的,那怎么做到不可编辑呢。我感觉有矛盾啊。。。

追问

没有钱了。。。换QQ继续吧。。。QQ号已发私信

追答

。。。没金币也无所谓啊,就这里回答不行么。答案还可以给别人做参考。实在不行用百度hi。qq号已经有太多知友了,无法再加人了。

追问

如果采用Label嵌入RichTextBox的话,就像在Word里面添加文本框一样,题目内容将是完整的一块,无法与上下文衔接。理想情况是一整段文本,但一部分受到ReadOnly保护,另一部分则不。考虑到编辑问题,另外应该不允许从题目区跨越到答案区进行选择。

追答

是喔,差点忘记还有readonly这茬了。题目就用不可编辑的label就成了。

追问

问题就是使用Label会像Word的文本框一样形成独立的一块,无法与上下文形成很好的衔接,达到图上所示的效果

(现在追问已经到10金币一次了。。。继续讨论转百度hi吧。。。)

以上是关于WPF,制作填空题的主要内容,如果未能解决你的问题,请参考以下文章

anki填空卡正确代码

再问个C语言填空题

求助几道JAVA填空题

蓝桥杯就要开赛了,填空题还不会?我教你一篇学会填空题,从此填空满分,信心大涨

填空题&&函数题部分

sqlserver填空题求助