locked
FAQs: 在VB.NET 中,怎样用My.Settings 保存用户的设置呢? RRS feed

  • 问题

  • 为了帮助大家更好地学习 Visual Basic技术,微软论坛技术支持团队编辑了一些列的 "Visual Basic 常见问题及解答" 精华帖。

    本帖的主题是:在VB.NET 中,怎样用My.Settings 保存用户的设置呢?

    如果您觉得这个帖子对您的学习、工作有所帮助,请再把这个帖子分享给你的同学、同事和朋友。

    如果您想阅读更多的 "Visual Basic 常见问题及解答",请打开索引页面:
    http://social.msdn.microsoft.com/Forums/zh-CN/vbasiczhchs/thread/c9ab4b8e-99dc-49a2-bcea-30f3ecc3c3b7


    如果您对我们的论坛在线支持服务有任何的意见或建议,请通过邮件告诉我们。
    MSDN 论坛好帮手 立刻免费下载  MSDN 论坛好帮手
    2011年3月3日 2:42

答案

  • 关于使用My.Settings的文章:

    http://msdn.microsoft.com/zh-cn/library/ms379611(VS.80).aspx

     

    1)        例如:保存窗体背景颜色的属性值

    创建一个新的 Setting

     

    项目菜单->属性 -> Settings 页面->创建一个新的 setting

     

    Name         Type                           Scope      Value

     

    myColor   System.Drawing.Color     User       SkyBlue

    当窗体加载时使用这个设置:

      Me.BackColor = My.Settings.myColor

    改变值并保存:

        My.Settings.myColor = Color.AliceBlue

        My.Settings.Save()

    2)             另外,如果你要保存集合数据(如ListBox.Items, ComboBox.Items,需要加上System.Collections.Specialized.StringCollection 数据类型。

    1.   项目->属性->设置->创建一个新的Setting

    Name   ListBoxCollection

    Type   System.Collections.Specialized.StringCollection (Browser and locate this type)

    Scope    User         

    Value   (至少添加一项,作为初始化值)

    2.   代码示例:

    先在窗体上拖一个ListBoxTextBoxButton

      

     

    Public Class Form1

        Private Sub Form1_Load(ByVal sender As System.Object,   ByVal e As System.EventArgs )Handles MyBase.Load

            For Each item As String In My.Settings.ListBoxCollection

                ListBox1.Items.Add(item)

            Next

        End Sub

     

        Private Sub Button1_Click(ByVal sender As System.Object, _                     ByVal e As System.EventArgs) _                     Handles Button1.Click

            If TextBox1.Text <> "" And ListBox1.Items.Contains(TextBox1.Text) = False Then

                ListBox1.Items.Add(TextBox1.Text)

                My.Settings.ListBoxCollection.Add(TextBox1.Text)

            End If

        End Sub

        '当窗体关闭时保存设置 

        Private Sub Form1_FormClosed(ByVal sender _                      As System.Object, ByVal e As _                      System.Windows.Forms.FormClosedEventArgs) _                      Handles MyBase.FormClosed

            My.Settings.Save()

        End Sub

    End Class


    如果您对我们的论坛在线支持服务有任何的意见或建议,请通过邮件告诉我们。
    MSDN 论坛好帮手 立刻免费下载  MSDN 论坛好帮手
    2011年3月3日 2:42