如何在VB.net中将字符串转换为代码?
首先,让我们看看我的代码:如何在VB.net中将字符串转换为代码?,vb.net,Vb.net,首先,让我们看看我的代码: Private Sub FormLoad(sender As Object, e As EventArgs) Handles MyBase.Load txtMDF.Text = My.Settings.MDF End Sub 假设My.Settings.MDF的字符串值为Application.StartupPath+“\MyDB.MDF”。我得到这个结果: 但我希望结果是: 我尝试了以下链接和方法: 代码区-但我不明白 正如ProGamer建议
Private Sub FormLoad(sender As Object, e As EventArgs) Handles MyBase.Load
txtMDF.Text = My.Settings.MDF
End Sub
假设My.Settings.MDF
的字符串值为Application.StartupPath+“\MyDB.MDF”
。我得到这个结果:
但我希望结果是:
我尝试了以下链接和方法:
- 代码区-但我不明白 正如ProGamer建议的那样 首先 保存您的
My.Settings.MDF
String=None
秒
按如下方式编辑代码:
第三
将以下代码添加到YourFormClose\u事件
请注意,您应该在MDF设置的“作用域下拉列表”中选择“用户”,而不是“应用程序”,否则My.Settings.Save()将不起作用,并且将保持为“无”
例如:
正如ProGamer建议的那样
首先
保存您的My.Settings.MDF
String=None
秒
按如下方式编辑代码:
第三
将以下代码添加到YourFormClose\u事件
请注意,您应该在MDF设置的“作用域下拉列表”中选择“用户”,而不是“应用程序”,否则My.Settings.Save()将不起作用,并且将保持为“无”
例如:
为什么要将
应用程序.StartupPath
放入设置中?只需在设置中保留文件名,然后使用Path.Combine()
获得完整的文件名否,我希望它就像最初打开文件位置时的Application.StartupPath++“\MyDB.mdf”一样,但稍后如果我要更改数据库位置,则应更改它并保存在我的.Settings中…因此,请使用默认值显示它们,然后,如果他们想更改位置,你必须专门保存他们的整个文件路径。但我不能按我要求的做吗?不,不能直接。。。如果您真的需要这样的变量前缀,我建议您将其存储为“!SUP\MuDB.mdf”之类的格式,然后在读取时进行替换。为什么要将Application.StartupPath
放入设置中?只需在设置中保留文件名,然后使用Path.Combine()
获得完整的文件名否,我希望它就像最初打开文件位置时的Application.StartupPath++“\MyDB.mdf”一样,但稍后如果我要更改数据库位置,则应更改它并保存在我的.Settings中…因此,请使用默认值显示它们,然后,如果他们想更改位置,你必须专门保存他们的整个文件路径。但我不能按我要求的做吗?不,不能直接。。。如果您真的需要这样的可变前缀,我建议您将其存储为“!SUP\MuDB.mdf”之类的格式,然后在阅读时进行替换。我很乐意!等待你的结果。:);)<代码>如果。。。FormLoad
中的else语句没有任何意义,因为您无论如何都要用来自的值覆盖txtMDF.Text
settings@Fabio这是正确的。代码的最后一行将用值“None”覆盖txtMDF.Text中的值,因为My.Settings.MDF中的值仍然包含值“None”并且尚未与新值一起保存。@ChrisDunaway我添加了这一点,因为假设他在ConnectionString中使用该位置,并在Form_Load上打开连接,则他将得到错误,因此我添加了该值,这不会产生影响,因为我认为只有当他在My.Settings.MDF然后就可以了。。。。我想知道我是否正确,请让我知道。。。。tnx!谢谢你们的帮助,但我现在使用Mohammad Zulfikar的代码没有任何问题…我的荣幸!等待你的结果。:);)<代码>如果。。。FormLoad
中的else语句没有任何意义,因为您无论如何都要用来自的值覆盖txtMDF.Text
settings@Fabio这是正确的。代码的最后一行将用值“None”覆盖txtMDF.Text中的值,因为My.Settings.MDF中的值仍然包含值“None”并且尚未与新值一起保存。@ChrisDunaway我添加了这一点,因为假设他在ConnectionString中使用该位置,并在Form_Load上打开连接,则他将得到错误,因此我添加了该值,这不会产生影响,因为我认为只有当他在My.Settings.MDF然后就可以了。。。。我想知道我是否正确,请让我知道。。。。tnx!谢谢你们的帮助,但我现在使用Mohammad Zulfikar的代码没有任何问题。。。
Private Sub FormLoad(sender As Object, e As EventArgs) Handles MyBase.Load
If My.Settings.MDF = "None" Then
txtMDF.Text = Application.StartupPath + "\MyDB.mdf"
Else
txtMDF.Text = My.Settings.MDF
End If
txtMDF.Text = My.Settings.MDF
End Sub
Private Sub FormClosing(sender As Object, e As CancelEventArgs) Handles Me.Closing
My.Settings.MDF = txtMDF.Text
My.Settings.Save()
End Sub