| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4071 人关注过本帖
标题:求教:窗体的 静态 类变量的 作用
取消只看楼主 加入收藏
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-2 12:52:37的发言:

我運行沒有問題,那是你的事。要麽把代碼黏貼回去。

===================

TonyDeng老师,我把我之前的代码全部注释掉,两个窗体完全复制您的代码,但是 Emp窗体类 出现如下错误


public void BindList()
        {
            //清空ListView中的所有项
            listView1.Items.Clear();
            //如何将数组中的数据绑定到LIstVIew
            //ListView中每一项都是ListViewItem
            for (int i = 0; i < emps.Length; i++)
            {
                ListViewItem lv = new ListViewItem();

                lv.Text = emps[i].ID; // 错误“未将对象引用设置到对象实例”

                //SubItems是每一项的对应的列
                // lv.SubItems.Add(emps[i].ID);
                lv.SubItems.Add(emps[i].Name);
                lv.SubItems.Add(emps[i].Age.ToString());
                lv.SubItems.Add(emps[i].Assess);
                lv.SubItems.Add(emps[i].Score.ToString());

                listView1.Items.Add(lv);
            }
        }
2014-02-02 13:24
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
期待老师指点帮助,感谢ing!!!
2014-02-02 18:55
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-3 02:11:59的发言:

你做什麽動作時出現這個錯誤?
粘贴您的代码后,重新生成,之后运行的时侯出现的问题。
多谢您的回复!!!

[ 本帖最后由 learnerok 于 2014-2-3 17:27 编辑 ]
2014-02-03 17:26
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
1楼的 用 静态 类变量 ” 来调用 方法 的做法 称作什么呢??

感谢 老师指点!!!
2014-02-03 18:06
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-3 19:14:24的发言:

我沒運行出你所說的現象
我使用的是VS2010,您用的也是吗?
2014-02-03 21:35
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-3 22:30:46的发言:

我用12,與版本沒多大關係的。你的程序就是一個表格,點擊一行出現再出現一個窗體麽,運行沒問題啊。

是在 “填充第二个窗体表格后,点击“确定””后 出现问题的

TonyDeng老师,您能帮忙解释一下 ““ 静态 类变量 ” 来调用 方法 的做法 称作什么呢??” 吗??

对于1楼的问题,我纠结了好久,也在网上搜寻该问题,但都未能找到,好郁闷啊。


[ 本帖最后由 learnerok 于 2014-2-4 12:13 编辑 ]
2014-02-04 10:31
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-3 22:30:46的发言:

我用12,與版本沒多大關係的。你的程序就是一個表格,點擊一行出現再出現一個窗體麽,運行沒問題啊。
运行过程是这样的:运行 → 出现listView 的 Emp 窗体 → 双击一行 → 出现“评分”窗体GetScore → 填充评分 → 确定后 → Emp 窗体有了更新

是在 “填充第二个窗体表格后,点击“确定””后 出现问题的。


[ 本帖最后由 learnerok 于 2014-2-4 12:13 编辑 ]
2014-02-04 11:57
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-4 20:44:10的发言:

粗略看,是邏輯錯誤,點擊【評分】後,你重新生成一個Emp對象,這個對象沒有執行InitData(),裏面是空的。
是 BindList() 里的  lv.Text = emps[i].ID; // 错误“未将对象引用设置到对象实例”

非常感谢您的指导回复!!!

======================

public void BindList()
        {
            //清空ListView中的所有项
            listView1.Items.Clear();
            //如何将数组中的数据绑定到LIstVIew
            //ListView中每一项都是ListViewItem
            for (int i = 0; i < emps.Length; i++)
            {
                ListViewItem lv = new ListViewItem();

                lv.Text = emps[i].ID; // 错误“未将对象引用设置到对象实例”

                //SubItems是每一项的对应的列
                // lv.SubItems.Add(emps[i].ID);
                lv.SubItems.Add(emps[i].Name);
                lv.SubItems.Add(emps[i].Age.ToString());
                lv.SubItems.Add(emps[i].Assess);
                lv.SubItems.Add(emps[i].Score.ToString());

                listView1.Items.Add(lv);
            }
        }
2014-02-04 22:08
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-4 20:47:32的发言:

至於你百思不解的問題,那沒什麽專有名稱,其方法原理不過是使用了一個屬於類的共享字段(類的聲明爲靜態的對象本質上是全局變量的性質,類中的全局)進行數據交換和調用。
1.是否可以这样理解,全局静态字段 的 功用 就是 方便 数据 调用的?

2.1楼的问题,只能通过 这个 静态的 “类变量” 来调用 绑定方法(BindList()
)??

多谢您的指导!!!
2014-02-04 22:23
learnerok
Rank: 2
等 级:论坛游民
帖 子:387
专家分:47
注 册:2011-5-21
收藏
得分:0 
以下是引用TonyDeng在2014-2-4 22:30:25的发言:

都不知道應該怎麽教你,前面説過的又要返回頭說:這種方法——至少在你目前的應用上——是彆扭的、不合邏輯的旁門辦法。
後一個問題爲什麽錯,已經告訴你什麽原因了。
还是没明白啊,汗!

再请教:
1. “是彆扭的、不合邏輯的旁門辦法”----- 如何做才是符合逻辑的 好的代码?
2. 您指的是“逻辑问题”吗? 俺还是不明白 是怎么个逻辑问,您能在进一步讲解一下吗?
  或者说,为什么会出现“你重新生成一個Emp對象,這個對象沒有執行InitData(),裏面是空的” 问题??

多谢您!!!

[ 本帖最后由 learnerok 于 2014-2-5 08:49 编辑 ]
2014-02-04 22:52
快速回复:求教:窗体的 静态 类变量的 作用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022462 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved