MFC中CListCtrl控件怎样获取某列的列号

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MFC中CListCtrl控件怎样获取某列的列号相关的知识,希望对你有一定的参考价值。

有一个CListCtrl控件,列头有:序号,日期, ……,备忘,……
我想知道 “备忘” 的列号,这个怎么实现?

参考技术A
CHeaderCtrl * pHeader = ListCtrl.GetHeaderCtrl();
int nCount = pHeader->GetItemCount();

HDITEM hdi;
enum sizeOfBuffer = 256 ;
TCHAR lpBuffer[sizeOfBuffer];
bool fFound = false;

hdi.mask = HDI_TEXT;
hdi.pszText = lpBuffer;
hdi.cchTextMax = sizeOfBuffer;

for (int i=0; i < nCount; i++)

pHeader->GetItem(i, &hdi);
if (strcmp(hdi.pszText, "备忘") == 0)

return i; // 找到了, i 就是你要找的序号


本回答被提问者采纳
参考技术B GetColumn之类的函数追问

这个函数的参数需要列号,我需要的就是列号

页面载入时通过获取GridView某行某列的值来控制某一列的控件属性

通过获取状态来控制“查看”button的Visible属性值。


技术分享     

技术分享

    在前台GridView中加入 OnRowDataBound="GridView1_RowDataBound“。例如以下:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowSorting="True"
                                    OnRowDataBound="GridView1_RowDataBound" BackColor="White">

  </asp:GridView>

在后台 GridView1_RowDataBound 事件中对控件属性控制。例如以下:

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
        {
                      if (e.Row.Cells[4].Text == "县审核通过")
                {
                    e.Row.Cells[11].Visible = false;   //设置当前选中行第11列为不可见
                }

        }









以上是关于MFC中CListCtrl控件怎样获取某列的列号的主要内容,如果未能解决你的问题,请参考以下文章

MFC列表控件 CListCtr

MFC2016.6.8

mfc的ClistCtrl控件列的排序

怎样在MFC中的列表视图控件CListCtrl显示信息?谢谢

在MFC的CListCtrl中怎么实现当鼠标在一定的列双击时执行特定的函数?

MFC的list control控件,如何得到某一行某列的字符串内容?