首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >第二种形式使用SerialPort

第二种形式使用SerialPort
EN

Stack Overflow用户
提问于 2013-07-30 14:51:43
回答 1查看 121关注 0票数 1

我试图写入.xml文件,并将错误对象引用设置为对象的实例。在第49行(CreateNode)中。这是我试过的密码,但没有运气。

代码语言:javascript
复制
private void CreateNode(string Port, string BaudRate, string DataBits, string Parity,_
string StopBits, string Handshaking, XmlTextWriter writer)
{
    //Writing to the .xml file. This will make the program be able to load the properties last used.
    writer.WriteStartElement("ApplicationProperties");
    writer.WriteStartElement("Port");
    writer.WriteString(Port);
    writer.WriteEndElement();
    writer.WriteStartElement("BaudRate");
    writer.WriteString(BaudRate);
    writer.WriteEndElement();
    writer.WriteStartElement("DataBits");
    writer.WriteString(DataBits);
    writer.WriteEndElement();
    writer.WriteStartElement("Parity");
    writer.WriteString(Parity);
    writer.WriteEndElement();
    writer.WriteStartElement("StopBits");
    writer.WriteString(StopBits);
    writer.WriteEndElement();
    writer.WriteStartElement("Handshaking");
    writer.WriteString(Handshaking);
    writer.WriteEndElement();
    writer.WriteEndElement();
}

private void SaveProperties()
{
    //CreateNode(everything being referenced. Put text boxes, and drop down boxes here.
    XmlTextWriter writer = new XmlTextWriter(@"C:\ForteSenderv2.0\Properties.xml", System.Text.Encoding.UTF8);
    writer.WriteStartDocument(true);

    //Making the code indeted by 2 characters.
    writer.Formatting = Formatting.Indented;
    writer.Indentation = 2;

    //Making the start element "Table".
    writer.WriteStartElement("Forte_Data_Gatherer_Application");
    //Calling the rst of the .xml file to write.
    CreateNode(ApplicationPort.PortName, ApplicationPort.BaudRate.ToString(), ApplicationPort.DataBits.ToString(), ApplicationPort.Parity.ToString(), ApplicationPort.StopBits.ToString(), ApplicationPort.Handshake.ToString(), writer);
    writer.WriteEndElement();
    writer.WriteEndDocument();
    writer.Close();
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-30 14:58:56

代码语言:javascript
复制
Dim mySerialPort as serialPort

mySerialPort.PortName = SetPortName(mySerialPort.ApplicationPort);

MSDN是一个很好的资源。

编辑

代码语言:javascript
复制
error: Object reference not set to an instance of an object. on line 49 (CreateNode).

private void CreateNode(string Port, string BaudRate, string DataBits, string Parity,_
string StopBits, string Handshaking, XmlTextWriter writer)

private void blabla (PortName as string, BaudRate as string, DataBits as string,_
Parity as string, Handshaking as string)

我看不出你怎么会有XmlTextwriter在里面。就我个人而言,我从来没有见过这样的事情。我可以看到你的努力,真的很欣赏你的工作和你想要取得的成就,我真的认为你把事情复杂化了。编码的诀窍(不是说我是专家)是用最简单的方法来创建所需的功能。尽可能短,越长越好。

我认为你需要重新考虑你的算法,你想要实现什么,我是用最简单的方式去做这件事,还是让这个项目变得不必要的复杂?

创建subs时,函数等等,您不需要将所有变量都填充到顶部的声明中。这就是身体的用途。

我敦促您使用MSDN,并进一步研究这一点,它将变得更容易。这里有一个指向MSDN .Net框架类库的链接-它涵盖了所有内容:)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17950342

复制
相关文章

相似问题

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