首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过(列)名称而不是硬编码索引获取相关的ListViewSubItem?

通过(列)名称而不是硬编码索引获取相关的ListViewSubItem?
EN

Stack Overflow用户
提问于 2016-02-11 14:10:04
回答 1查看 90关注 0票数 1

我有一个ListViewItem扩展方法包装器,它通过索引(硬编码)获取相关的SubItem引用,我想知道是否有办法通过不对索引编号进行硬编码来获得它。

代码语言:javascript
复制
public class ListViewExtensionsLogic : IListViewExtensionsLogic
{
    public ListViewItem.ListViewSubItem GetUserIdSubitem(ListViewItem lvi)
    {
        return lvi.SubItems[1]; // I want to get it by not hard-coding it
    }
}

public static class ListViewExtensionMethods
{
        private static IListViewExtensionsLogic _listviewExtensionsLogic;

        static ListViewExtensionMethods()
        {
            var builder = new ContainerBuilder();
            builder.RegisterType<ListViewExtensionsLogic>().As<IListViewExtensionsLogic>();

            var container = builder.Build();
            container.BeginLifetimeScope();

            _listviewExtensionsLogic = container.Resolve<IListViewExtensionsLogic>();
        }

        public static ListViewItem.ListViewSubItem GetUserIdSubItem(this ListViewItem lvi)
        {
            return _listviewExtensionsLogic.GetUserIdSubitem(lvi);
        }
}

是这样使用的:

代码语言:javascript
复制
        private void InitializeFollowers()
        {
            if (lvFollowList.Items.Count > 0)
            {
                foreach (ListViewItem lvi in lvFollowList.Items)
                {
                    if (!String.IsNullOrEmpty(lvi.GetUserIdSubItem().Text))
                    {
                        // Do something here
                    }
                }
            }
        }
EN

回答 1

Stack Overflow用户

发布于 2016-02-11 14:28:16

为什么不将索引和参数传递给下面这样的方法

代码语言:javascript
复制
public ListViewItem.ListViewSubItem GetUserIdSubitem(ListViewItem lvi, int index)
{
    return lvi.SubItems[index];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35341582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档