WinForm程序如何保存最近登录的账号?
就像QQ一样...打开时会自动显示上次登录的账号..
请提供一个思路和,最好有代码,谢谢了^_^

解决方案 »

  1.   

    登陆的时候将帐号记录在xml中就可以把,再次启动登陆界面的时候,加载xml文件中的用户名就可以咯。
      

  2.   

    1、在登录框要放有一个“是否记住密码”的控件
    2、当登录成功后,并且用户选择了记住密码。那么将这个用户名和密码保存在一个文件中,可以是XML格式的文件,当然最好要加密。
    3、除了保存到文件,还可以将用户名和密码保存在客户端的注册表中,等等,
    4、下次用户登录的时候判断下注册表或者xml文件是否存在有效数据,有则读取并且赋值给登陆框。
    5、若用户选了不记住密码,那么要清空注册表或者xml中的数据
      

  3.   

    To gomoku:放注册表会不会太麻烦。没用过不知道怎么写啊。代码方面可以提示下么?
    To hookyzlr:我只有app。cofig文件。要写进xml文件怎么写呀?
    能给个例子看么?   真的很急着用啊。帮帮忙
      

  4.   

    如果不用注册表也可以在Settings.Settings下添加用户范围的条目,可读可写,系统帮你具体操作配置文件。
      

  5.   

    用FileStream 写到文本里面,然后读取文本内容 添加到combobox中。。
      

  6.   

    在你的debug目录下建一个access文件,每次登陆插入一条数据。其它的怎么做就不用说
      

  7.   

    建立个XML文件简单记录一下就好了,不用想的太复杂
      

  8.   

         System.Configuration.KeyValueConfigurationElement k = c.AppSettings.Settings["k"];
                if (k== null)
                {
                    c.AppSettings.Settings.Add("k", "");
                }
                else
                {
                    // k.Value;
                }保存到配置里
      

  9.   

    可以记录一下登录的记录放到数据库的log表中 但是定期要去清理这个表
      

  10.   

    txt文本就OK了,有必要搞这么麻烦嘛,还注册表……
      

  11.   

    在登陆时把登陆名存入一个xml文件里,在登陆窗口加载事件中去读取保存登陆名那个文件里有名字
    参考:
    登录事件
    if (File.Exists(Application.StartupPath + @"\NoteSet.xml"))
                {
                    XmlDocument doc = new XmlDocument();
                    doc.Load(Application.StartupPath + @"\NoteSet.xml");
                    XmlNode node = doc.GetElementsByTagName("Bespeak")[0];
                    node.Attributes["auto"].Value = auto ? "T" : "F";
                    node.InnerText = content;
                    doc.Save(Application.StartupPath + @"\NoteSet.xml");
                }
    加载事件
    if (File.Exists(Application.StartupPath + @"\NoteSet.xml"))
                {
                    XmlDocument doc = new XmlDocument();
                    doc.Load(Application.StartupPath + @"\NoteSet.xml");
                    XmlNode node = doc.GetElementsByTagName("Bespeak")[0];
                    cbBespeakNote.Checked = (node.Attributes["auto"].Value == "T") ? true : false;
                    txtNoteContent.Text = node.InnerText;
                }
      

  12.   

    xml文件
    <?xml version="1.0" encoding="utf-8" ?><Note>
      <Bespeak auto="T">你好</Bespeak>
    </Note>
      

  13.   

     node.Attributes["auto"].Value = auto ? "T" : "F"; 这个是什么?node.InnerText = content; 这个是什么的值?
    cbBespeakNote.Checked = (node.Attributes["auto"].Value == "T") ? true : false
    这个是什么控件?
      

  14.   

    放配置文件简单。
    绑定到 TextBox的Text属性上。读写都省了
      

  15.   

    怎么放配置文件? 放什么配置文件呀 ?是config文件还是xml文件吖?
    绑定又是怎么绑定??
    说得太笼统了点 。我完全不明白呀
      

  16.   

    登陆的时候将帐号记录在xml中就可以把,再次启动登陆界面的时候,加载xml文件中的用户名就可以咯。
      

  17.   

    第一种方法:序列化保存。
    [Serializable]
    public User
    {
    public  string UserName{get;set};
    public  string Password{get;set};
    }下面的m_drawModel是User的一个对象
    //保存
    private void tsbSave_Click(object sender, EventArgs e)
            {
                SaveFileDialog dlg = new SaveFileDialog();
                dlg.Filter = "DrawAnswerFile(*.daf)|*.daf|All File(*.*)|*.*";
                if (dlg.ShowDialog() == DialogResult.OK)
                {
                    using (FileStream stream = new FileStream(dlg.FileName, FileMode.Create))
                    {
                        BinaryFormatter formatter = new BinaryFormatter();
                        formatter.Serialize(stream, m_drawModel);
                        stream.Flush();
                    }
                }
            }
    //读取
            private void tsbOpen_Click(object sender, EventArgs e)
            {
                OpenFileDialog dlg = new OpenFileDialog();
                dlg.Filter = "DrawAnswerFile(*.daf)|*.daf";
                if (dlg.ShowDialog() == DialogResult.OK)
                {
                    ClearControls();
                    using (FileStream stream = new FileStream(dlg.FileName, FileMode.Open))
                    {
                        BinaryFormatter formatter = new BinaryFormatter();
                        m_drawModel = (DrawModel)formatter.Deserialize(stream);
                        OpenInitialControls();
                    }
                }
            }第二种方法:
    给你的应用程序加一个Config文件。
    如下:
    <appSettings>
        <add key="UserName" value="Admin"/>
        <add key="Password" value="admin"/>
    </appSettings>
    之后这样取出来就可以了。(必须Reference进来 System.Configuration库)
    string userName = ConfigurationManager.AppSettings["UserName"];
    string password = ConfigurationManager.AppSettings["Password"];
    第一种方法可能保密性稍微好点吧。这个可以和本地化存储结合起来用就更好点了。
    第二种方法方便一点。