C#ComboBox下拉框多级联动,禁止修改,多级联动下一级数据为空处理

首先设置下拉框的DropDownStyle的属性为:DropDown;

然后给comboBox.Text赋值,然后在给DropDownStyle设置为DropDownList;

多级联动是给下一级赋值时用SelectedIndexChanged函数出现的问题,在此记录一下,多级联动的SelectdeIndexChanged选择数据变动时触发,如果下一级没有数据这里会显示异常或者不是自己响要的数据,例如没有数据时:想显示暂无数据,那么这是侯自动触发函数赋值数据时要先赋值数据在给DropDownStyle设置为DropDown,等数据赋值完在给DropDownStyle设置为DropDownList;

图中的message的内容为:暂无数据

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用C#中的ListBox控件来实现类似于触屏上下滑列表效果。 首先,在窗体中添加一个ListBox控件,并设置其Dock属性为Fill,这样它将会占据整个窗体的空间。然后,将ListBox控件的SelectionMode属性设置为None,这样可以禁止用户通过鼠标或键盘选择列表项。 接下来,需要使用一些代码来实现下拉框的滑效果。可以在ListBox控件的MouseDown事件中记录鼠标按下时的位置,然后在MouseMove事件中计算鼠标移的距离,根据距离调整ListBox控件的Top属性,从而实现列表的滑效果。最后,在MouseUp事件中重置一些变量,以便下一次操作。 下面是一个简单的示例代码: ``` public partial class Form1 : Form { private int mouseDownY; private int listBoxTop; private bool isDragging; public Form1() { InitializeComponent(); listBox1.Items.Add("Item 1"); listBox1.Items.Add("Item 2"); listBox1.Items.Add("Item 3"); listBox1.Items.Add("Item 4"); listBox1.Items.Add("Item 5"); listBox1.Items.Add("Item 6"); listBox1.Items.Add("Item 7"); listBox1.Items.Add("Item 8"); listBox1.Items.Add("Item 9"); listBox1.Items.Add("Item 10"); } private void listBox1_MouseDown(object sender, MouseEventArgs e) { mouseDownY = e.Y; listBoxTop = listBox1.Top; isDragging = true; } private void listBox1_MouseMove(object sender, MouseEventArgs e) { if (isDragging) { int distance = e.Y - mouseDownY; int newTop = listBoxTop + distance; if (newTop < 0 && newTop > -(listBox1.Height - this.ClientSize.Height)) { listBox1.Top = newTop; } } } private void listBox1_MouseUp(object sender, MouseEventArgs e) { isDragging = false; } } ``` 需要注意的是,这只是一个简单的示例代码,实际应用中还需要进行一些优化和错误处理,例如限制列表的滑范围、处理鼠标操作时的边界情况等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值