Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Windows Forms cSharp bestimmte Textfelder mit Schleife ausblenden

Frage Entwicklung C und C++

Mitglied: Schminor

Schminor (Level 1) - Jetzt verbinden

26.12.2013 um 15:44 Uhr, 1755 Aufrufe, 4 Kommentare, 2 Danke

Hallo,

ich habe eine Windows Forms Anwendung in c#.

Auf einer Form gibt es unter anderen Textfelder txtParameter1 bist txtParameter10.
Aber auch noch einige andere Textfelder, Buttons, ...
Dann gibt es auch noch numericUpDown.
Nun möchte ich die Textfelder (txtParameter1 bist txtParameter10) je nach Wert des numericUpDown ein bzw. ausblenden.
Sprich wenn z.B. numericUpDown = 5, dann sollen die txtParameter6 - txtParameter10 ausgeblendet werden.

Es sollte aber keine Liste verwendet werden.

Wie löst man so etwas am Besten in einer Schleife?

Danke
Norbert
Mitglied: colinardo
26.12.2013, aktualisiert um 17:54 Uhr
Hallo Norbert,
könntest du so machen (für dein Beispiel wenn der Parameter immer eins größer ist als der Wert des numericUpDown-Feldes):
01.
for (int i = (int)numericUpDown1.Value + 1; i <= 10; i++) 
02.
03.
   this.Controls["txtParameter" + i].Visible = false; 
04.
}
Denke das Prinzip wie du Controls mit Namen ansprichst war dein Knackpunkt

Grüße Uwe
Bitte warten ..
Mitglied: Schminor
26.12.2013 um 18:35 Uhr
Perfekt. Danke ja genau das war mein Knackpunkt.
Aber jetzt hätte ich noch eine Frage.

Im Testprogramm funktioniert das einwandfrei.
Aber im echten Programm liegen die TextBoxen auf einem Panel in einem Tab.
Und dann kommt der Fehler "Objektverweis wurde nicht auf eine Objektinstanz festgelegt".

Ich denk da fehlt mir noch der Bezug aufs Panel und Tab.

Danke
Bitte warten ..
Mitglied: colinardo
26.12.2013, aktualisiert um 18:46 Uhr
das ist kein Problem das machst du so:
01.
for (int i = (int)numericUpDown1.Value + 1; i <= 10; i++) 
02.
03.
  tabControl1.TabPages["tabPage2"].Controls["panel1"].Controls["txtParameter" + i].Visible = false; 
04.
}
tabControl1 = Name des TabControls
tabPage2 = Name des Tabs
panel1 = Name des Panels auf dem Tab

Grüße Uwe
Bitte warten ..
Mitglied: Schminor
26.12.2013 um 19:02 Uhr
Jetzt aber. Danke nochmals.
Und so werden aus 2 Seiten Code 20 Zeilen

for (int i = 3; i <= updParamExtruderZones.Maximum; i++)
{
if (i <= zones)
{
this.panParamExtruder.Controls["txtParamExtruderTempHead" + i].Visible = true;
this.panParamExtruder.Controls["txtParamExtruderTempSP" + i].Visible = true;
this.panParamExtruder.Controls["txtParamExtruderTempAV" + i].Visible = true;
this.panParamExtruder.Controls["txtParamExtruderTempUnit" + i].Visible = true;
//this.tabTestRun.TabPages["tabTestRunParam"].panParamExtruder.Controls["txtParamExtruderTempHead" + i].Visible = true;
}
else
{
this.panParamExtruder.Controls["txtParamExtruderTempHead" + i].Visible = false;
this.panParamExtruder.Controls["txtParamExtruderTempSP" + i].Visible = false;
this.panParamExtruder.Controls["txtParamExtruderTempAV" + i].Visible = false;
this.panParamExtruder.Controls["txtParamExtruderTempUnit" + i].Visible = false;
this.panParamExtruder.Controls["txtParamExtruderTempSP" + i].Text = "";
this.panParamExtruder.Controls["txtParamExtruderTempAV" + i].Text = "";
}
}
Bitte warten ..
Ähnliche Inhalte
Windows Server
Windows Server 2012R2 Automatische-Reparatur Schleife - NEU (46)

Frage von hans-tu-was zum Thema Windows Server ...

Windows Server
Windows 7 Bibliotheken per GPO sperren oder verhindern oder ausblenden (6)

Frage von VitalyFischer zum Thema Windows Server ...

Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Netzwerke
gelöst Standartgateway für Clients (21)

Frage von itsk-robert zum Thema Netzwerke ...

Firewall
Welche Firewall ? (18)

Frage von Cyberurmel zum Thema Firewall ...

Windows Server
gelöst Einzelnes Windows Update über GPO deinstallieren (16)

Frage von lordofremixes zum Thema Windows Server ...