在标签中保存文本

本文关键字:文本 保存 标签 | 更新日期: 2023-09-27 17:55:42

我创建了一个包含标签的 C# Windows 窗体应用程序(以及其他内容,但它们与问题无关)。 我希望能够做的是保存 .某些标签的文本属性。我了解如何设置表单关闭和表单加载事件,但我不知道从哪里开始保存??

如果有人想给我看一个代码片段,标签被命名为:lblJoeMoney,lblBobMoney,lblAlMoney

任何提示或链接到我可以在哪里获得更多信息都会很棒。

旁注:我知道我没有明确提出问题,所以这里是:如何在 C# Windows 窗体应用程序中保存某些数据

在标签中保存文本

有几个选项可用于保存数据。每个选项都是好是坏,具体取决于您的需求以及您需要保存的数据类型。我将介绍几个选项。

选项 1 -- 数据库

到目前为止,数据库是保存数据的最流行选择。在数据库中,创建表。表格用于组织、分组和定义要保存的数据类型。例如,对于简单的地址簿,您可能有一个包含姓名、地址、城市、州和邮政编码的表。

数据库可能很复杂,但可以简化检索数据的任务。例如,您可能只想检索纽约州的名称。如果您需要存储大量数据并需要以几种不同的方式查询数据,则在数据库中存储数据非常有意义。

数据库服务器的一些最受欢迎的选择包括Microsoft Sql Server、Oracle 和 MySql。这些数据库称为客户端/服务器数据库。数据库服务器通常位于 Internet 某处的远程计算机上,您的程序(客户端)连接到它。还有一些不需要服务器的文件系统数据库。这方面的例子是SQLite和SQL Server Express。这些只是在您的计算机上创建一个文件,所有数据都存储在该单个文件中。

对于 Internet 和 Web 应用程序,通常客户端/服务器数据库是要走的路。对于桌面应用程序(如 WPF 和 WinForms 应用程序),通常需要一个文件系统数据库,以便可以轻松地将其与您的应用程序一起分发,而无需持续的 Internet 连接。

选项 2 -- XML 文件

XML 文件有点像数据库(但是,在内部,它的工作方式与数据库完全不同),因为它用于以列和行格式存储数据。XML文件以人类可读的格式存储数据,可以在记事本中打开。XML 文件将数据存储在标记中。下面是该通讯簿在 XML 文件中的外观示例:

<?xml version="1.0" encoding="UTF-8"?>
<Names>
    <Name>
        <FirstName>Joe</FirstName>
        <LastName>Smith</LastName>
        <Address>123 Main Street</Address>
        <City>Poughkeepsie</City>
        <State>NY</State>
    </Name>
    <Name>
        <FirstName>Mike</FirstName>
        <LastName>Jones</LastName>
        <Address>982 Baker Street</Address>
        <City>Fargo</City>
        <State>ND</State>
    </Name>
</Names>

XML 文件很容易在 C# 中创建。在大多数情况下,可以只创建 XmlSerializer 类的实例并调用 Serialize 方法,或者将类实例转换为 XML 并调用反序列化方法以从 XML 转换回类的实例。缺点是XML非常冗长,如果您存储大量数据,则XML文件将变得很大,并且序列化和反序列化数据的过程将变得缓慢。此外,搜索数据可能成为一个缓慢的过程。

对于您的应用程序,这可能是要走的路。您可以在此处找到有关如何执行此操作的分步说明。

选项 3 -- 注册表

注册表通常用于存储程序设置,不建议用于存储数据。由于它是一个可行的存储选项,我只想在这里简要提及它。使用它来存储设置而不是数据!

听起来您想保存下次运行程序时使用的文本。请参阅:https://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.appsettings(v=vs.110).aspx

例如,将内容保存在配置文件"应用设置"中。

据我所知,简单的解决方案是序列化将信息保存到 xml 文件中所需的所有内容。
当程序关闭时,在"Form_Closing事件"部分中,将所有信息保存到 XML 文件中。
然后,在下次运行时,在Form_Load部分中,您将从该 xml 文件加载所有编队。