我需要将My.settings从第一个解决方案加载到第二个解决方案。
在第一个项目中,我有一个帮助类来获取设置。
Public Class format
Public NotInheritable Class Helper
Private Sub New()
End Sub
Public Shared Function getAppSetting() As String
Dim returnValue As Object = My.Settings.format
If returnValue Is Nothing Then
Return String.Empty
Else
Return returnValue.ToString
End If
End Function
Public Shared Function getAppSettingTheme() As String
Dim returnValue_theme As Object = My.Settings.theme_selected
If returnValue_theme Is Nothing Then
Return String.Empty
Else
Return returnValue_theme.ToString
End If
End Function
End Class
End Class
这个类我已经在其他解决方案中实现了(甚至上瘾,我有一套)
在其他解决方案中,我有获取设置的代码。
Imports MyProject.format.Helper
MsgBox(getAppSettingTheme())
但是在MsgBox中,我看到默认设置(不变),而在第一个解决方案中,显示用户更改的设置。
My.Settings我救了My.settings.save
发布于 2018-04-15 11:37:06
如果您选择以一种复杂的方式进行此操作,您必须做的是,在第一个项目中创建类来读取My.Settings
,然后在另一个项目中引用该项目并使用它.
然而,我宁愿描述一个更简单的方法(上面的方法并不难)来实现你的目标。
首先,我认为您正在使用My.Settings
存储一些数据,对吗?如果是这样,您可以简单地将数据保存到一个文本文件中,然后从want.This保存大量代码并使其整洁的任何地方读取它:)
因为你似乎是个初学者,我会尽量保持简单,用最简单的话解释.
现在,假设您有4个My.Settings
条目,如下所示:
UserName
密码
Phone
年龄
与其用My.Settings
编写这些数据,不如将其写到文本文件中。
Zack Rayan
1212121
+090990809809
20
要编写文本文件,只需使用File.WriteAllText
,但是正如我们在这里看到的,我们的数据是多行的,我们可以使用以下内容:
FIle.WriteAllLines
File.AppendText
那么,让我们使用File.AppendText
方法(您也可以在WriteAllText
中使用下面的代码:):
File.AppendText("C:\test.mycustomExtension" , "Zack Rayan" + Environment.NewLine + "1212121" + Environment.NewLine + "+090990809809" + Environment.NewLine + "20")
这将为您编写一个文本文件,其中包含给定数据的不同行,并且您将为该文件拥有自己的自定义扩展名:)
现在,如何使用它?
简单:
Dim ReadFile as New List(Of String)(File.ReadAllLines("C:\Test.mycustomextension"))
现在,让我们假设,当您使用My.Settings
时,您使用了如下代码:
If My.Settings.UserName = "Zack" Then
......
向上滚动并查看closely.UserName是您在My.Settings
中的第一个条目,当我们编写文本文件ZACK RAYAN时,假定的用户名也写在第一行中。
在上面的几行中,我创建了一个列表,它读取文本file.It不需要说它将先读取(并存储)第一行,然后逐渐移动。所以,你用的是:
If My.Settings.UserName = "Zack" Then
你现在应该使用:
If ReadFile(0) = "Zack" Then
我希望这有助于丰富你的知识:)
https://stackoverflow.com/questions/49841089
复制相似问题