这是我想要做的。我似乎无法找到解决方案:
我希望能够处理的案例:
正常:
恩。这是句子第1部分,这是句子第2部分
没有第二部分所以没有逗号
恩。这是句子第1部分我还是希望这个能够
自动换行
第二部分单词包装
恩。这是句子第1部分,这是句子
第2部分包装到第二行
另外
似乎没有简单的解决方案。 我能想到的那个有一个PropertyChangedEventHandler,它会在从web服务器返回这些字符串时通知我,然后在代码隐藏中格式化字符串...
答案 0 :(得分:2)
为了达到这样的效果,您尝试使用斜体格式实现连续自动换行,只有使用<Run>
中的TextBlock
元素才能明智地实现。但是,您无法绑定Run
元素的内容,因此您需要在代码中创建它。
假设您从Web服务获得两个单独的响应(它们不会从单个调用返回),那么您不能依赖首先进入哪个响应,因此我将使用事件聚合来通知视图收到所有必要数据后的视图模型。 PRISM library for WP7包含一个可以用来实现效果的实现(请注意,WP7的PRISM比它的WPF或Silverlight对应的 轻)。
为了响应该事件,您的视图可以从视图模型中提取属性,创建TextBlock
及其组件Run
元素,然后相应地进行更新。实际上,当您使用PRISM订阅事件时,您可以指定该事件的处理程序在UI线程上运行,这无疑会有所帮助。