我有一个datagridview控件,我用它来制作每周安排。
用户可以通过从gridview中选择多个单元格来选择不同日期的不同时间。
问题在于,一旦用户第一次选择多个单元格并想要选择更多单元格,他需要按下键盘上的Ctrl键,这对于最终用户来说非常难以使用,如果他是/她没有键盘可用,或者他不知道按Ctrl键。
我附上了快照。 如果你有,请给我任何解决方案。
答案 0 :(得分:0)
也许您可以使用DataGridView的CellMouseDown
,CellMouseMove
和CellMouseUp
事件来执行此操作。
答案 1 :(得分:0)
您可以使用输入模拟器来保存Control键,而使用鼠标事件提到的Wudge可以解决您的问题。
http://inputsimulator.codeplex.com/releases/view/37570
private void Form1_Load(object sender, EventArgs e)
{
List<Person> mypeople = new List<Person>();
mypeople.Add(new Person() { Key = 3, Value = "Turgay" });
mypeople.Add(new Person() { Key = 4, Value = "Hamsi" });
mypeople.Add(new Person() { Key = 5, Value = "Cabbar" });
dataGridView1.DataSource = mypeople;
dataGridView1.MouseEnter += DataGridView1_MouseEnter;
dataGridView1.MouseLeave += DataGridView1_MouseLeave;
}
private void DataGridView1_MouseEnter(object sender, EventArgs e)
{
InputSimulator.SimulateKeyDown(VirtualKeyCode.CONTROL);
}
private void DataGridView1_MouseLeave(object sender, EventArgs e)
{
InputSimulator.SimulateKeyUp(VirtualKeyCode.CONTROL);
}