Deselect text in a textbox

我只是一个虾纸丫 提交于 2020-01-03 07:27:33

问题


I have a windows form that sets the text property in a textbox to that of a string variable. When the form is ran, it has all of the text in the textbox selected. I need to try and figure out how to keep that from happening. I tried the

DeslectAll() 

method on the textbox but that doesn't seem to work. I also tried

txtBox.SelectNextControl(txtCostSummary, true, false, true, true);

but I kind of was guessing on what the paramters needed to be set to, tweaking them doesn't seem to make a difference. To really understand what I'm doing I'll make it a little more clear on how this all is happening.

public Form1()
{
    Apple a = new Apple();
    a.IwantThisText = "Item 1: " + 50.00 + "\r\n";
    txtBox.Text = a.IwantThisText;
}

Class Apple
{
    private string iWantThisText;
    public string IwantThisText
    {
    get { return iWantThisText; }
    set { iWantThisText += value; } // Appends what was there before
    }
}

Everything works fine except the part where it has printed the information in the textbox but all the text in the textbox is selected, which isn't what I thought would happen, nor is it what I want to happen.

Thanks for any ideas!


回答1:


Try this:

txtBox.Select(0, 0);



回答2:


I know it's an old question, but I found that this works too:

txtBox.SelectionLength = 0;

This might be preferable to SteveCav's Select(0,0) as it doesn't move the selection start point.




回答3:


Try this:

//remove focus from control.
Apple a = new Apple();    
a.IwantThisText = "Item 1: " + 50.00 + "\r\n";    
txtBox.Text = a.IwantThisText;

// Add this
txtBox.TabStop = false;


来源:https://stackoverflow.com/questions/3331762/deselect-text-in-a-textbox

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!