Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# get set

Potřebuji dostat string "jmeno" z formu2 do formu1

//form2
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace TextEdit01
{
public partial class startKonecPGM : Form
{
string jmeno;

public startKonecPGM()
{
InitializeComponent();
}

// Tlačítko vložit
public void btnOKJmenoPGM_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.OK;
}

// Tlačítko konec
private void btnCancelJmenoPGM_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Cancel;
}

public string JmenoPGM
{
get
{
return jmeno;
}
set
{
jmeno = value;
}
}

private string jmenoPGM(string jmeno)
{
jmeno = "0 BEGIN PGM " + txtJmenoPGM.Text + " MM"
+ Environment.NewLine + Environment.NewLine +
"150 END PGM " + txtJmenoPGM.Text + " MM";
return jmeno;
}

}
}

// form1
private void btnSartKonecPGM_Click(object sender, EventArgs e)
{
startKonecPGM startKonecPGM = new startKonecPGM();
startKonecPGM.ShowDialog();

if (startKonecPGM.DialogResult == DialogResult.OK)
{
richTextBox1.SelectedText = startKonecPGM.JmenoPGM; // tady potřebuji dostat string jmeno
}
}

Předmět Autor Datum
No a v čem je problém?
Wikan 01.02.2019 21:52
Wikan
string "jmeno" se nezobrazí v richTextBox1
Spelec 01.02.2019 21:55
Spelec
A jsi si jistý, že ten string má vůbec nějakou hodnotu? Nikde totiž nevidím, že bys ji nastavovat.
Wikan 01.02.2019 22:11
Wikan
Tady v té funkci private string jmenoPGM(string jmeno) { jmeno = "0 BEGIN PGM " + txtJmenoPGM.Text…
Spelec 01.02.2019 22:21
Spelec
To je sice hezké, že na to máš metodu (nikoliv funkci), ale pokud ji nikde nevoláš, tak samozřejmě n…
Wikan 01.02.2019 22:29
Wikan
jak tu metodu v get zavolám
Spelec 01.02.2019 22:33
Spelec
Tím jsem mluvil o původní verzi.
Wikan 01.02.2019 22:34
Wikan
Zajimalo by mě jak by to šlo napsat stou metodou
Spelec 01.02.2019 22:38
Spelec
get { return jmenoPGM(""); } Ale je to už trochu prasárna.
Wikan 01.02.2019 22:42
Wikan
Super funguje to. Proč je to prasárna? Měl bych rači používat ten způsob bez metody?
Spelec 01.02.2019 22:50
Spelec
Tak jenom namátkou: Metoda přijímá jako vstup string, který pak vůbec nepoužívá. Buď tam měj propert…
Wikan 02.02.2019 08:53
Wikan
Super dík za rady. poslední
Spelec 02.02.2019 11:32
Spelec

Tady v té funkci

private string jmenoPGM(string jmeno)
{
jmeno = "0 BEGIN PGM " + txtJmenoPGM.Text + " MM"
+ Environment.NewLine + Environment.NewLine +
"150 END PGM " + txtJmenoPGM.Text + " MM";
return jmeno;
}

Tak to funguje

public string JmenoPGM
{
get
{
return "0 BEGIN PGM " + txtJmenoPGM.Text + " MM"
+ Environment.NewLine + Environment.NewLine +
"150 END PGM " + txtJmenoPGM.Text + " MM";
}

Tak jenom namátkou:
Metoda přijímá jako vstup string, který pak vůbec nepoužívá.
Buď tam měj property nebo metodu. Pokud tam máš obojí a nepoužívá se to na nic jiného, tak zbytečně zesložiťuješ kód.
A poměrně klasická věc: mícháš do sebe data a uživatelské rozhraní.

Zpět do poradny Odpovědět na původní otázku Nahoru