簡體   English   中英

如何使用密碼保護文本框,以保護Winform C#中的輸入

[英]how to password protect a textbox, to secure input in winform c#

因此,我試圖用密碼保護添加到列表中的文本框。 正如我在文本框中輸入文本,然后彈出一個對話框,要求輸入密碼。 那可能嗎? 在下面,我將插入代碼片段。

private void button6_Click_1(object sender, EventArgs e)
        {

           BlockList.Add (textBox2.Text );              // adds url to block list


        }

        private void button7_Click_1(object sender, EventArgs e)
        {
            BlockList.Remove(textBox2.Text);
        }

如果我理解正確,則需要創建一個Costum表單,其中包含一個文本框和一個按鈕作為單獨的類,然后,您需要創建該類的實例並在其上調用.showDialog()方法,然后用戶可以只在對話框中輸入一些內容(例如MessageBox)。 之后,您將需要從班級獲得輸入的密碼,並確定密碼是否正確(我假設您只是想要一種“簡單”的保護,而不是加密的保護)。 我想到的最簡單的解決方案是將您的密碼傳遞給另一個類,然后在那里檢查您的密碼是否正確,然后返回一個DialogResult,您只需對其進行評估即可。 這樣的東西(對於您的方法button_6_Click_1()):

const string password = "123456789";    //just an example password

            string url = textBox1.Text;

            // Get if the user entered the right password
            GetPass pass = new GetPass(password);

            // Check this with a dialog result
            DialogResult result = pass.ShowDialog();

            if (result == DialogResult.OK)
            {
                    BlockList.Add(url);
                    MessageBox.Show("Added " + url + " to blocklist.");
                    textBox1.Clear();

            }

這將是另一個WinForm類的代碼:

public partial class GetPass : Form
    {
        // Use a texBox called textBox1 and a button called btn_confirm
        private string refPassword;

        public GetPass(string password)
        {
            InitializeComponent();
            refPassword = password;
        }

        private void btn_confirm_Click(object sender, EventArgs e)
        {
            string password = textBox1.Text;
            if (password.CompareTo(refPassword) == 0)
            {
                this.DialogResult = DialogResult.OK;
            }
        }
    }

我將讓您完成擴展工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM