如何打印对象的结构?

时间:2015-04-08 09:37:02

标签: c# .net

对象具有类xmlparser和datalog_session的所有属性。 现在我需要在richtextbox上打印和对象dts的所有属性。 我该怎么办?

OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "XML files|*.xml";
if (ofd.ShowDialog() == DialogResult.OK)
{
    txtPath.Text = ofd.FileName;
    XMLParser objxmlparser = new XMLParser();
    ArrayList al = objxmlparser.readDataLogXml(txtPath.Text);
    for (int i = 0; i <al.Count ; i++)
    {
        //Getting Object of DataLog_Session
        Datalog_Session dts = (Datalog_Session)al[i];

        //
        richTextBox1.AppendText(dts.BaseID);
        richTextBox1.AppendText(dts.TWA_Time_Base.ToString());
        richTextBox1.AppendText(dts.User);
        //richTextBox1.AppendText(dts.Time_Stamp);
        richTextBox1.AppendText(dts.Recording_Interval.ToString());
        richTextBox1.AppendText(dts.Comments);
        richTextBox1.AppendText(dts.Reason_Code.ToString());
        richTextBox1.AppendText(dts.Session_Number.ToString());
        richTextBox1.AppendText(dts.SN);
    }
}

1 个答案:

答案 0 :(得分:1)

您应该为您的班级覆盖.ToString()方法。

public class Datalog_Session
{
    // ...

    public override string ToString()
    {
        return String.Format("Value for foo: {0}, value for bar: {1}",
           this.foo, this.bar)
    }
}

然后在你的代码中

Datalog_Session dts = (Datalog_Session)al[i];

richTextBox1.AppendText(dts.ToString());