DotNetBar的使用(六)ListBox&Richtextbox

DotNetBar的使用(六)ListBox&Richtextbox

1、取列表框中被選中的值

 private void listBox1_SelectedIndexChanged(object sender, EventArgs e)

        {

            MessageBox.Show(listBox1.SelectedItem.ToString()); //顯示所選項目

        }

 

2、動態的添加列表框中的項

private void listBox1_DoubleClick(object sender, EventArgs e)

        {

            listBox1.Items.Add("11");

            listBox1.Items.Add("22");

            listBox1.Items.Add("33");

            listBox1.Items.Add("44");

        }

3、移出指定項

 private void listBox1_Click(object sender, EventArgs e)

        {

//移出選擇的項

            if (listBox1.Items.Count > 0)

            {

                listBox1.Items.Remove(listBox1.SelectedItem);

            }

        }

1、清空所有項

 private void listBox1_Click(object sender, EventArgs e)

        {

            if (listBox1.Items.Count > 0)

            {

                //清空所有項

                listBox1.Items.Clear();

            }

        }

2、移動所選項目

private void button2_Click(object sender, EventArgs e)   //向上移動

        {

            try

            {

                string item = listBox1.SelectedItem.ToString(); //獲取所選項

                int i = listBox1.SelectedIndex;  //獲取索引

                if (i == 0) //如果所選的是第一項,返回

                    return;

                listBox1.Items.Remove(listBox1.SelectedItem.ToString()); //移除所選項

                listBox1.Items.Insert(i - 1, item); //在前一項之前插入所選項

                listBox1.SelectedIndex = i - 1;  //重置索引

            }

            catch (Exception)

            {

                MessageBox.Show("未選擇項");

            }

        }

private void button3_Click(object sender, EventArgs e)  //向下移動

        {

            try

            {

                string item = listBox1.SelectedItem.ToString();

                int i = listBox1.SelectedIndex;

                if (i == listBox1.Items.Count - 1)

                    return;

                listBox1.Items.Remove(listBox1.SelectedItem.ToString());

                listBox1.Items.Insert(i + 1, item);

                listBox1.SelectedIndex = i + 1;

            }

            catch (Exception)

            {

                MessageBox.Show("未選擇項");

            }

        }

 

 

3、設置richtextbox的字體樣式和顏色

richTextBox1.SelectionFont = new Font("楷體", 12, FontStyle.Bold);  

//設置SelectionFont屬性實現控件中的文本爲楷體,大小爲12,字樣是粗體  

richTextBox1.SelectionColor = System.Drawing.Color.Red;    

//設置SelectionColor屬性實現控件中的文本顏色爲紅色  

 

RichTextBox控件顯示爲超鏈接樣式

將以http://”開頭的Web鏈接地址作爲超鏈接文本時,運行時RichTextBox超鏈接文本會自動變成藍色字體且有下劃線。

 

 

 

 

1

RTF 文件加載到控件中並搜索單詞“baidu”的第一個實例。然後代碼更改選定文本的字體樣式、字體大小和字體顏色並將更改保存到原始文件。

 public void CreateMyRichTextBox()

        {

            //RichTextBox richTextBox1 = new RichTextBox();

            //richTextBox1.Dock = DockStyle.Fill;

            richTextBox1.LoadFile(@"C:\Users\Administrator\Desktop\2.rtf");

            richTextBox1.Find("baidu", RichTextBoxFinds.MatchCase);

            richTextBox1.SelectionFont = new Font("Verdana", 12, FontStyle.Bold);

            richTextBox1.SelectionColor = Color.Red;

            richTextBox1.SaveFile(@"C:\Users\Administrator\Desktop\2.rtf", RichTextBoxStreamType.RichText);

            //this.Controls.Add(richTextBox1);

        }

 

2

實現所選文本粗體和非粗體的切換

private void button4_Click_1(object sender, EventArgs e)

        {

            oldFont = this.richTextBox1.SelectionFont; //獲得字體

            if (oldFont.Bold) //若是粗體

            {

                newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);

                //字體的樣式是使用二進制編碼來實現的,爲了只實現粗體的變化,

                //只能通過位運算來實現,這樣做的目的是爲了不影響其他樣式的改變

            }

            else  //若不是粗體

                newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);

 

            this.richTextBox1.SelectionFont = newFont; //新字體

            this.richTextBox1.Focus();  //爲控件設置輸入焦點

 

        }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章