快3网上购买

已爬文:如何用silverlight的RichTextBox做编辑器并保存数据,显示数据?

电脑杂谈  发布时间:2019-09-02 22:03:28  来源:网络整理

richtextbox图片_,richtextbox_richtextbox 保存

举荐楼主使用Vectorlight的Richtextbox,这个Richtextbox可以内部直接ImportHtml,

可参考

有控件源码快3网上购买,和Demo下载使用起来便于。

又找……

,richtextbox_richtextbox图片_richtextbox 保存

不是那么简单,Vectorlight的Richtextbox封装了HTML属性。本来准备把他的转化方式提取起来,发现代码好复杂,能力有限,吃不透,就没法用它原本的控件了。

dui_ckydui_cky08-18 20:12

等级Bbs110楼

引用9楼yasire的回复:不是这么简洁richtextbox 保存richtextbox 保存,Vectorlight的Richtextbox封装了HTML属性。本来准备把他的转化方式提取起来,发现代码好复杂,能力有限,吃不透,就没法用它原本的控件了。

richtextbox 保存_richtextbox图片_,richtextbox

我也看了下,最终加载HTML和保存的是在这两个地方


private string WriteStyleAsHTML(string id, Dictionary<string, string> keyValues)
        {
            StringBuilder results = new StringBuilder();
            RichTextBoxHtmlEventArgs args = new RichTextBoxHtmlEventArgs()
            {
                ID = id,
                Styles = keyValues
            };

            RaiseWriteStyleToHtml(this, args);
            if (!args.Cancel)
            {
                results.Append(args.ID + " {");
                foreach (KeyValuePair<string, string> pair in args.Styles)
                {
                    results.Append(pair.Key + ":" + pair.Value + ";");
                }
                results.Append("}\r");
            }

            return results.ToString();
        }

        /// <summary>
        /// Converts a block of CSS styles to RichText styles
        /// </summary>
        /// <param name="styles">CSS styles</param>
        /// <returns>RichText styles</returns>
        private void GetStylesFromHTML(string styles)
        {
            string[] split1 = styles.Split('}');
            RichTextBoxStyle style;
            RichTextBoxTableStyle tableStyle;
            RichTextBlock root = Root;
            string temp;
            string[] split;

            foreach (string s in split1)
            {
                temp = s.Trim();

                if (temp.Length > 0)
                {
                    if (temp.ToLower().StartsWith(".table"))
                    {
                        split = temp.TrimStart('.').Split(' ');
                        if (root.TableStyles.ContainsKey(split[0]))
                        {
                            tableStyle = root.TableStyles[split[0]];
                        }
                        else
                        {
                            tableStyle = new RichTextBoxTableStyle();
                            root.TableStyles.Add(split[0], tableStyle);
                        }
                        tableStyle.FromHTML(split[0], temp + "}");
                    }
                    else
                    {
                        if (temp.StartsWith("."))
                        {
                            style = new RichTextBoxStyle();
                            style.FromHTML(temp + "}");
                            AddStyle(style);
                            CheckForCustomStyle(style.ID);
                        }
                    }
                }
            }
        }

控件源码转来转去的。比较复杂,呵呵。。

yasireyasire08-19 19:12

,richtextbox_richtextbox 保存_richtextbox图片

等级Bbs111楼

难道就没法用对方封装好的控件吗?

微软到了4.0才回来个richtextbox,结果只能显示xaml,对html支持还是不够好啊~!

badi888badi88808-22 09:57

richtextbox图片_richtextbox 保存_,richtextbox

等级Bbs112楼

帮顶。。。。

a121984376a12198437608-23 16:41

等级13楼


本文来自电脑杂谈,转载请注明本文网址:
http://www.kadakong.com/a/jisuanjixue/article-121487-1.html

    相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 卢真
      卢真

      平时手机电量都能用一天

    • 刘敞
      刘敞

      都适合和你白头到老有的人

    • 普罗依斯加奇
      普罗依斯加奇

      欧美发达国际同居制度正在取代婚姻制度

    吉林快3 快三网上购买 广西快3计划 北京赛车pk10玩法 快3投注网 快赢彩票登陆 冠军彩票开户 快3在线投注 快3网上投注 冠军彩票投注