你调用的对象是空的

0 c#

海,

在我执行函数的代码中,我经常得到异常错误,因为"对象引用没有设置为对象的实例"

除外的功能如下

private void PageHeaderSetting(Graphics g)
        {
            try
            {
                DataTable dtPageHeader=new DataTable() ;
                dtPageHeader = ds.Tables["Page Header"];
                if (dtPageHeader.Rows.Count != 0)
                {
                    foreach (DataRow dr in dtPageHeader.Rows)
                    {
                        if (dr.ItemArray[0].ToString() != "")
                            PageHeaderText = dr.ItemArray[0].ToString();
                        else
                            PageHeaderText = "";
                        if (dr.ItemArray[1].ToString() != "")
                            PageHeaderFont = (Font)dr.ItemArray[1];
                        else
                            PageHeaderFont = new Font("Tahoma", 18, FontStyle.Bold, GraphicsUnit.Point);
                        if (dr.ItemArray[2].ToString() != "")
                            PageHeaderFormat = AlignmentSetting(dr.ItemArray[2].ToString());
                        else
                            PageHeaderFormat = AlignmentSetting(Convert.ToString(Alignment.Left));
                        if (dr.ItemArray[3].ToString() != "")
                            PageHeaderColor = (System.Drawing.Color)dr.ItemArray[3];
                        else
                            PageHeaderColor = Color.Black;

                        PageFooterText = Word_Wrap(PageHeaderText, PageHeaderFont, g, 0);
                        PageHeader(g);
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Run Code Online (Sandbox Code Playgroud)

我怎么能解决这个问题.任何人都可以帮帮我吗?

从第二行我得到异常错误意味着在声明数据表并将ds.Tables放入其中之后发生错误

the*_*oop 6

此异常意味着您尝试在null对象上调用方法.该异常应该给你一个堆栈跟踪,其中包含它被抛出的行号; 这会帮你把它钉一点.您也可以尝试在visual studio中调试它,看看抛出异常的位置,看看什么是null.