C#正在保存TextBox输入

本文关键字:TextBox 输入 保存 | 更新日期: 2023-09-27 18:27:26

我正在用C#制作一个Windows窗体,我对这一切都很陌生。。现在,这就是我想要实现的:

文本框有一个默认的文本集,但当用户修改它时,我希望下次打开表单时加载修改后的文本。(仅当选中复选框时)

我的问题是:这可能吗?如果是,怎么做?就像我说的,我对C#真的很陌生,所以即使搜索了很多,我也找不到如何做到这一点

using System;
using Sulakore;
using System.Linq;
using Sulakore.Habbo;
using System.Drawing;
using Kendax.Properties;
using Sulakore.Protocol;
using System.Windows.Forms;
using System.Threading.Tasks;
using Sulakore.Communication;
using Sulakore.Protocol.Encryption;
namespace Kendax
{
    public partial class UpdateHeaders : Form
    {
        public UpdateHeaders()
        {
            InitializeComponent();
        }
        private void UpdateHeadersBtn_Click(object sender, EventArgs e)
        {
            HHeaders.Motto = ushort.Parse(UpdateMotto.Text);
            HHeaders.Say = ushort.Parse(UpdateSay.Text);
            HHeaders.Walk = ushort.Parse(UpdateWalk.Text);
            HHeaders.Pong = ushort.Parse(UpdatePong.Text);
            HHeaders.Dance = ushort.Parse(UpdateDance.Text);
            HHeaders.Sign = ushort.Parse(UpdateSign.Text);
            HHeaders.Shout = ushort.Parse(UpdateShout.Text);
            HHeaders.Rotate = ushort.Parse(UpdateRotate.Text);
            HHeaders.Stance = ushort.Parse(UpdateStance.Text);
            HHeaders.Like = ushort.Parse(UpdateLike.Text);
            HHeaders.Trade = ushort.Parse(UpdateTrade.Text);
            HHeaders.Respect = ushort.Parse(UpdateRespect.Text);
            HHeaders.AddFriend = ushort.Parse(UpdateAddFriend.Text);
            HHeaders.Clothes = ushort.Parse(UpdateClothes.Text);
            HHeaders.Gesture = ushort.Parse(UpdateGesture.Text);
            HHeaders.Navigate = ushort.Parse(UpdateMotto.Text);
            HHeaders.Exit = ushort.Parse(UpdateExit.Text);
            HHeaders.JoinGroup = ushort.Parse(UpdateJoinGroup.Text); ;
            HHeaders.LeaveGroup = ushort.Parse(UpdateLeaveGroup.Text);
            HHeaders.HelpRequest = ushort.Parse(UpdateHelpRequest.Text);
            HHeaders.Scratch = ushort.Parse(UpdateScratch.Text);
            HHeaders.RideHorse = ushort.Parse(UpdateRideHorse.Text);
            HHeaders.MakeRoom = ushort.Parse(UpdateMakeRoom.Text);
            HHeaders.Facing = ushort.Parse(UpdateFacing.Text);
            HHeaders.Whisper = ushort.Parse(UpdateWhisper.Text);
            HHeaders.ChangeName = ushort.Parse(UpdateChangeName.Text);
        }
        private void ResetDefaults_Click(object sender, EventArgs e)
        {
            HHeaders.Motto = 3117;
            HHeaders.Say = 2632;
            HHeaders.Walk = 2383;
            HHeaders.Pong = 516;
            HHeaders.Dance = 250;
            HHeaders.Sign = 3133;
            HHeaders.Shout = 269;
            HHeaders.Rotate = 3390;
            HHeaders.Stance = 2049;
            HHeaders.Like = 2947;
            HHeaders.Trade = 1384;
            HHeaders.Respect = 1724;
            HHeaders.AddFriend = 20;
            HHeaders.Clothes = 3713;
            HHeaders.Gesture = 3976;
            HHeaders.Navigate = 2219;
            HHeaders.Exit = 2520;
            HHeaders.JoinGroup = 3134;
            HHeaders.LeaveGroup = 3816;
            HHeaders.HelpRequest = 3540;
            HHeaders.Scratch = 1292;
            HHeaders.RideHorse = 3621;
            HHeaders.MakeRoom = 3156;
            HHeaders.Facing = 1462;
            HHeaders.Whisper = 2382;
            HHeaders.ChangeName = 809;
// These are the textboxes and their default values
            UpdateMotto.Text = 3117.ToString();
            UpdateSay.Text = 2632.ToString();
            UpdateWalk.Text = 2383.ToString();
            UpdatePong.Text = 516.ToString();
            UpdateDance.Text = 250.ToString();
            UpdateSign.Text = 3133.ToString();
            UpdateShout.Text = 269.ToString();
            UpdateRotate.Text = 3390.ToString();
            UpdateStance.Text = 2049.ToString();
            UpdateLike.Text = 2947.ToString();
            UpdateTrade.Text = 1384.ToString();
            UpdateRespect.Text = 1724.ToString();
            UpdateAddFriend.Text = 20.ToString();
            UpdateClothes.Text = 3713.ToString();
            UpdateGesture.Text = 3976.ToString();
            UpdateNavigate.Text = 2219.ToString();
            UpdateExit.Text = 2520.ToString();
            UpdateJoinGroup.Text = 3134.ToString();
            UpdateLeaveGroup.Text = 3816.ToString();
            UpdateHelpRequest.Text = 3540.ToString();
            UpdateScratch.Text = 1292.ToString();
            UpdateRideHorse.Text = 3621.ToString();
            UpdateMakeRoom.Text = 3156.ToString();
            UpdateFacing.Text = 1462.ToString();
            UpdateWhisper.Text = 2382.ToString();
            UpdateChangeName.Text = 809.ToString();
// End of textboxes and their default values
        }
    }
}

用户应该删除默认文本,并需要输入新的文本。该输入应在关闭表单时保存,并在再次打开表单时加载如果复选框被选中ELSE,打开表单时不应保存任何输入,并且应加载默认文本。

有人能帮我吗?我知道这可能有点模糊,但再一次,我是新手,我也不是英国人(我是荷兰人)。提前感谢,我真的希望有人能理解我想要实现的目标。。如果没有,我很抱歉!

再次,提前感谢!

更新:

好吧,所以我尝试将输入保存为1个文本框,这就是我所做的:

http://i.gyazo.com/950c85a0d80ce942d103dc75668094d1.png(我还不能上传图片,因为信誉太低)

这就是我在设置中所做的,然后在这里加载默认值:

public UpdateHeaders()
{
    InitializeComponent();
    UpdateMotto.Text = Settings.Default.UpdateMotto.ToString();
}

这就是它应该保存用户输入的地方:

private void UpdateHeaders_FormClosed(object sender, FormClosedEventArgs e)
{
    Settings.Default.UpdateMotto = ushort.Parse(UpdateMotto.Text);
    if (RememberMe.Checked)
    {
        Settings.Default.Save();
        Settings.Default.Reload();
    }
    else
    {
        this.Close();
    }
}

它没有保存该文本框的输入,而是加载了默认输入。.config文件已经生成,但没有更新,并且仍然保留默认值。我做错了什么?

再次提前感谢:)

C#正在保存TextBox输入

如果您使用的是Visual Studio,您可以转到项目属性窗口,单击"设置"选项卡,然后在其中添加"用户"设置。在代码中,您可以使用Properties.Settings.Default来访问您添加的各个设置。

从标题到你的问题,你似乎已经走了那么远。因此,剩下的就是,在将值实际分配给Default settings对象中的属性之后,调用Save()方法。这将在用户的配置文件目录下以XML文件的形式写出设置,并将在同一用户下次运行程序时自动加载。