我有一个应该包含路径的可编辑组合框。用户可以从下拉列表中选择多个默认路径(或输入他自己的路径),例如%ProgramData%\\Microsoft\\Windows\\Start Menu\\Programs\\ (All Users)
。下拉列表中的项目包含一个简短说明,如前一个示例中的(All Users)
部分。在选择这样的项目时,我想删除这个解释,以便在ComboBox中显示一个有效的路径。在选择项目时替换组合框中的文本
我目前将解释排除在字符串之外,并尝试通过设置ComboBox的Text
属性来更改文本。但这不起作用,字符串被正确解析,但显示的文本不会更新(它与下拉列表中的解释一致)。
private void combobox_TextChanged(object sender, EventArgs e) {
//..
string destPath = combobox.GetItemText(combobox.SelectedItem);
destPath = destPath.Replace("(All Users)", "");
destPath.Trim();
combobox.Text = destPath;
//..
}
什么或如何显示文本看就是不能正常工作..? – MethodMan
和你有没有尝试捕获SelectedItemIndex,以便你确切知道哪些combox.Text设置..? – MethodMan
如果它没有正常工作,那么文本就和我没有删除文本一样。我不太了解你的第二个评论,因为设置Text属性在任何情况下都不起作用。 – Lennart