簡體   English   中英

單擊時的文本框的Visual Studio 2015 C#顏色對話框

[英]Visual Studio 2015 C# color dialog for textbox when clicked in

因此,我試圖創建一個小程序,在其中單擊空文本框時,將出現一個對話框,並更改文本框的背景。 現在,我嘗試使用下面的代碼,但是它什么也沒做。 文本框處於只讀模式。 任何幫助都非常感謝。

 private void textBox1_Enter(object sender, System.EventArgs e)
    {
        colorDialog1.ShowDialog();
        textBox1.BackColor = colorDialog1.Color;

    }

(如果您使用的是Windows窗體(我假設您使用的是Windows窗體),則應該對其進行標記,並且不應該帶有“ Visual Studio”標記)

如果我創建Windows窗體應用程序,請在窗體上放置一個文本框和一個“顏色對話框”,然后添加以下代碼:

    private void textBox1_Enter(object sender, EventArgs e)
    {
        if (colorDialog1.ShowDialog() == DialogResult.OK)
        {
            textBox1.BackColor = colorDialog1.Color;
        }
    }

...向上彈出“顏色”對話框。 如果我選擇一種顏色並按OK,則文本框的背面顏色會更改。 我在沒有將ReadOnly設置為true的情況下嘗試了此操作(我很驚訝您可以“輸入”一個只讀文本框,但是...)。

因此,您是否看到彈出的顏色對話框,然后選擇一種顏色並按OK,然后什么都看不到? 真令人驚訝 或者,您看到其他東西了嗎?

就其價值而言,這不是一個很棒的UI設計。 我不希望由於單擊文本框而彈出另一個對話框。 另請注意,這可能僅發生一次。 在文本框中單擊后,即已輸入。 您必須先將焦點設置在另一個控件上,然后再次單擊文本框。 如果您單擊上方的同一地點,則只會在第一次輸入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM