C# 获得剪贴板内容和 richTextBox部分文本设置颜色

   try
                {
                    MemoryStream vMemoryStream = iData.GetData("Html Format") as MemoryStream;
                    if (vMemoryStream!=null)
                    {
                        vMemoryStream.Position = 0; //获取或设置当前流的位置
                        byte[] byteCode = new byte[vMemoryStream.Length];

                        vMemoryStream.Read(byteCode, 0, (int)vMemoryStream.Length);
                        var stringCode = Encoding.UTF8.GetString(byteCode);

                        richTextBox1.Text = "0012156"; //可以改变部分颜色

                        //int start = this.richTextBox1.SelectionStart; // 记录变颜色之前的选中的起始位置
                        //int length = this.richTextBox1.SelectionLength; // 记录变颜色之前的选中的长度
                        this.richTextBox1.Select(0, 3); // 选中要变颜色的 部分文本
                        this.richTextBox1.SelectionColor = Color.Blue; // 设置要变的颜色 this.richTextBox1.Select(start, length); // 恢复变色前的选中状态
                        //this.richTextBox1.Focus(); // 重新获取焦点(这个根据不同的需求可以去掉)
                    }
                }
                catch
                {
                    MessageBox.Show("异常");
                }
                var A1 = iData.GetData(DataFormats.Html); //指定由html指定的文本
                var A2 = iData.GetData(DataFormats.Text); //指定标准ANSI文本格式
                var A3 = iData.GetData(DataFormats.OemText); // 指定标准 Windows 原始设备制造商 (OEM) 文本格式
                this.textBox1.Text = (string)iData.GetData(DataFormats.Html);