我正在使用进度条显示电池状态。如果用户点击进度条,我想显示包含详细信息的弹出窗口。
排除需要检查点击协调是否在进度条范围内的解决方案是否有人找到了另一个解决方案或解决方法?
答案 0 :(得分:1)
此外,它通常被认为是仅以用户习惯的方式使用控件的好形式。进度条意味着(并且传统上使用)仅用于显示信息。这就是为什么他们删除了Compact Framework中的所有交互事件。
我认为更好的方法是保持进度条不变,并在栏上方或旁边添加“详细信息”LinkLabel。
答案 1 :(得分:1)
好了,一个更简单的自定义控件方法就是从UserControl开始,在其上放一个ProgressBar并将其停靠以便填充UserControl,然后将ProgressBar公开为UserControl的公共属性,这样你的代码会说
myProgressBar1.ProgressBar.Max = 100
而不是
progressBar1.Max = 100
然后只需使用usercontrol的Click事件来显示详细信息(我认为您可能必须禁用内部ProgressBar才能使点击工作,但这不应影响进度条的外观)。
这样,您的用户控件看起来就像常规进度条(因此,就像屁股一样)。 :)
答案 2 :(得分:0)
我总是编写自己的自定义ProgressBar用户控件。它可能需要5分钟才能完成,内置的进度条控件看起来就像是屁股。
我认为可能会使用Reflection来实现这一点,但是编写自己的控件会更容易。
更新:我刚尝试将ProgressBar作为一个控件(它有一个Click事件),然后在代码中分配一个事件处理程序,但这似乎不起作用。