社区
C#
帖子详情
listview的问题
kbtjh
2009-03-14 03:25:09
我在listview 中存放有数据,双击listview,弹出一个txt编辑框,将编辑框显示并把位置及大小控制在listview 选择的某列需要编辑处,当编辑框失去焦点时候,再把编辑里的内容保存在listview选择的该行指定可以修改列处(也就是双击的地方).. 再把数据存放到数据库里面..
请求解决方案!!!!
...全文
128
10
打赏
收藏
listview的问题
我在listview 中存放有数据,双击listview,弹出一个txt编辑框,将编辑框显示并把位置及大小控制在listview 选择的某列需要编辑处,当编辑框失去焦点时候,再把编辑里的内容保存在listview选择的该行指定可以修改列处(也就是双击的地方).. 再把数据存放到数据库里面.. 请求解决方案!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kbtjh
2009-03-14
打赏
举报
回复
应该怎么改呢..我还是不清楚哦.
.谢谢
zgke
2009-03-14
打赏
举报
回复
int _Width = -GetScrollPos(_ListView.Handle, 0);
改这行
zgke
2009-03-14
打赏
举报
回复
哦 忘记加左右滚动条了 要用这个了
[DllImport("User32.dll")]
private static extern int GetScrollPos(IntPtr ConvertIntPtr, int x);
最终位置要- 这个获取的位置...
kbtjh
2009-03-14
打赏
举报
回复
在利用到滚动条进行移动的时候,,获取时坐标并不是与实际相致的,,而是偏小的!!!
这是为什么??
kbtjh
2009-03-14
打赏
举报
回复
哦哦...谢谢你啦!!
在上面那里还有一些小小的问题:如果是进行流动的时候..它就会出现错误的!!
zgke
2009-03-14
打赏
举报
回复
晕~~datagridView里有button check text image link combox ....而且编辑能指定到行或则列...而且输入错误有
errorText 效果很不错的..你应该尝试用下.
kbtjh
2009-03-14
打赏
举报
回复
因为listview里有一个checked 属性啊!!我可以通过它实现一些功能..
我对datagridview 也不很会用..
zgke
2009-03-14
打赏
举报
回复
有个疑问 为什么不用dadaGridView呢?
zgke
2009-03-14
打赏
举报
回复
private void Form1_Load(object sender, EventArgs e)
{
for (int i = 0; i != 100; i++)
{
listView1.Items.Add(new ListViewItem(new string[] { "1", "1", "1", "1", "1" }));
}
TextBox _TextBox = new TextBox();
_TextBox.Visible = false;
_TextBox.Leave += new EventHandler(_TextBox_Leave);
_TextBox.Multiline = true;
_TextBox.BorderStyle = BorderStyle.None;
listView1.Controls.Add(_TextBox);
}
void _TextBox_Leave(object sender, EventArgs e)
{
TextBox _TextBox = (TextBox)sender;
if (_TextBox.Tag == null) return;
ListViewItem.ListViewSubItem _SubItem = (ListViewItem.ListViewSubItem)_TextBox.Tag;
_SubItem.Text = _TextBox.Text;
_SubItem.Tag = null;
_TextBox.Visible = false;
}
private void listView1_MouseUp(object sender, MouseEventArgs e)
{
ListView _ListView = (ListView)sender;
if (_ListView.Controls.Count == 0) return;
TextBox _TextBox = (TextBox)_ListView.Controls[0];
if (_TextBox.Tag != null)_TextBox_Leave(_TextBox, null);
ListViewItem _Item = _ListView.GetItemAt(e.X, e.Y);
if (_Item == null) return;
Rectangle _Rect = _ListView.GetItemRect(listView1.Items.IndexOf(_Item));
int _Width = 0;
int _ColumnIndex = 0;
for (int i = 0; i != _ListView.Columns.Count; i++)
{
_Width += _ListView.Columns[i].Width;
if (e.X < _Width)
{
_ColumnIndex = i;
_Width -= _ListView.Columns[i].Width;
break;
}
}
_TextBox.Text = _Item.SubItems[_ColumnIndex].Text;
_TextBox.Height = _Rect.Height;
_TextBox.Width = _ListView.Columns[_ColumnIndex].Width;
_TextBox.Tag = _Item.SubItems[_ColumnIndex];
_TextBox.Location = new Point(_Width, _Rect.Y);
_TextBox.Visible = true;
_TextBox.Font = _Item.SubItems[_ColumnIndex].Font;
_TextBox.Focus();
}
写了下看样子不难
ztenv
2009-03-14
打赏
举报
回复
1、要有自己的数据类,
2、填充listview时把Listviewitem的实例的tag赋值为你的数据类的实例,并用此实例的内存设置显示值
3、当双击时,取得鼠标所在的位置,并显示你的编辑界面,
android
listview
包含内容 横向
listview
微信
listview
x
listview
优化
带CheckBox的
listView
支持多选,全选,反选
带CheckBox的
listView
支持多选,全选,反选, 的功能,网上有好多遇见的这种需求做起来有bug,在这里都完美解决了
横向
ListView
的完整实现 包含基于横向
listview
做的一个小相册demo
横向
ListView
的完整实现 包含基于横向
listview
做的一个小相册demo 具体过程参见:http: blog csdn net yanzi1225627 article details 21294553
ListView
滑动删除 ,仿腾讯QQ 源码程序
ListView
滑动删除 ,仿腾讯QQ的源码
RecyclerView 瀑布流、
ListView
、GridView实例源码
代码为博客实例代码,http://blog.csdn.net/lmj623565791/article/details/45059587 有
问题
请博客留言
C#
111,126
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章