Tu mam zmienną projectName.
public partial class Form1 : Form
{
public string projectName { get; set; }
string promptValue = ShowDialog("Project name", "Project name", "New project");
A następnie
projectName = promptValue;
A tu jest funkcja ShowDialog która zwraca stringa.
public static string ShowDialog(string text, string caption, string showText)
{
Form prompt = new Form()
{
Width = 500,
Height = 150,
FormBorderStyle = FormBorderStyle.FixedDialog,
Text = caption,
StartPosition = FormStartPosition.CenterScreen
};
Label textLabel = new Label() { Left = 50, Top = 20, Text = text };
TextBox textBox = new TextBox() { Left = 50, Top = 50, Width = 400 };
Button confirmation = new Button() { Text = "Ok", Left = 350, Width = 100, Top = 70, DialogResult = DialogResult.OK };
confirmation.Click += (sender, e) => { prompt.Close(); };
prompt.Controls.Add(textBox);
prompt.Controls.Add(confirmation);
prompt.Controls.Add(textLabel);
prompt.AcceptButton = confirmation;
textBox.Text = showText;
return prompt.ShowDialog() == DialogResult.OK ? textBox.Text : "";
I teraz w tej klasie chcę skorzystać ze zmiennej projectName.
class SaveProject
{
Form1 form1 = new Form1();
public void saveProject(TabControl tabControl)
{
string test = form1.projectName ;
MessageBox.Show(test);
I nie wyświetla się nic.