C#Winform中放了一个listview里放了多个按钮,上下拉动滚动条按钮没有随着文字上下拉动,只有文字上下拉动!
我在listview里面绑定了很多行的数据,每一行都有按钮,然而当我上下滚动屏幕的时候
发现,除了文字可以上下滚动,按钮就在那里一动不动,拉下去的时候,按钮点出来的信
息还是前面几行的数据,某一个按钮的Tag的值还是前面几行的Tag的值,请问上下拖动
时,怎么让按钮也随着文字一样上下滚动,按钮的Tag还是原来的那一行的Tag。
应该还是和你的代码有关,可以参考以下内容
http://support.microsoft.com/kb/320342
或者参考这个
http://www.cnblogs.com/peterzb/archive/2009/06/18/1505424.html
我也很想知道,我也遇到这样的问题了 .我是使用Details模式的view ,然后是在代码中对listview添加控件 ,并且设置了控件的位置. 没有滚动条的时候正常,内容较多有滚动条时,向下拉动的时候,控件是无法跟随滚动.
微软的方法是要自己创建继承ListView控件,看样子只能这样了,比较繁琐也没办法.
// 微软给的,重写 WndProc,监听0x114,0x115
private const int WM_HSCROLL = 0x114;
private const int WM_VSCROLL = 0x115;
protected override void WndProc(ref Message msg)
{
// Look for the WM_VSCROLL or the WM_HSCROLL messages.
if ((msg.Msg == WM_VSCROLL) || (msg.Msg == WM_HSCROLL))
{
// 执行滚动时的对齐代码,自己添加的
this.Focus();
}
//执行基类的方法
base.WndProc(ref msg);
}