我使用所有者绘制变量样式的列表框(winforms 2.0) 当用户选择我想在该单元格中绘制编辑控件的项目时 这是可行的吗? 不是下拉,而是实际的编辑控件出现在单元格或项目中 怎么样 谢谢
答案 0 :(得分:1)
我正在使用类似的ListView。方法是:
创建TextBox,添加到Controls数组,然后隐藏一个。
innerTextBox.Size = new Size(0,0);
innerTextBox.Location = new Point(0,0);
this.Controls.AddRange(new Control [] {this.innerTextBox});
innerTextBox.KeyPress + = new KeyPressEventHandler(this.EditOver);
innerTextBox.LostFocus + = new EventHandler(this.FocusOver);
innerTextBox.Hide();
innerTextBox.Text =“”;
在DoubleClick事件绑定自己的方法中,找到所选项目并获取TextBox
的值this.DoubleClick + = new EventHandler(this.EditableDoubleClick);
private void EditableDoubleClick(object sender,System.EventArgs e) {
selectedItemText = selectedItem.ToString();
innerTextBox.Size = new Size(subItemRect.right - subItemRect.left,subItemRect.bottom - subItemRect.top);
innerTextBox.Location = new Point(subItemRect.left,subItemRect.top);
innerTextBox.Show();
innerTextBox.Text = selectedItemText;
}
在TextBox中失去焦点 - 将值设置回选定项目。
selectedItem = innerTextBox.Text;