Új hozzászólás Aktív témák
-
-Bálint.
csendes újonc
válasz
BTminishop
#7623
üzenetére
Oké, bocsi.

-
-Bálint.
csendes újonc
válasz
sztanozs
#7621
üzenetére
Ez, hogy a "másik form referenciája kell" sokat segített. Utánanéztem, hogy ez pontosan mit is jelent, és sikerült. Köszönöm
(Átírtam a konstruktorokat.)
Azt meg rosszul gondoltam, hogy származtatás esetén nem fognak öröklődni a kontrollerek, mert ez így normális hogy azok is öröklődnek. -
-Bálint.
csendes újonc
válasz
sztanozs
#7619
üzenetére
Az eredeti gyakorló feladatban azért származtattam, hogy egy tömböt (List<T> típusút) a Form2-ben is feltudjak tölteni, ne csak a Form1-ben. Biztos, hogy kell tudni a származtatást, mert az órán is vettük. Augusztus végi vizsgára készülök. Ezzel a projekttel szórakozok egyébként. Fut, de elfogadhatatlan a kinézete a Form2-nek.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Collections;namespace WindowsFormsApplication4
{
public partial class Form1 : Form
{
public List<Ceg> cegek = new List<Ceg>();public Form1()
{
InitializeComponent();
}private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
textBox1.Text = dateTimePicker1.Value.DayOfWeek.ToString();
}private void button1_Click(object sender, EventArgs e)
{//try
//{
//StreamReader str = new StreamReader("C:\\Users\\Katalin\\Letöltések\\cégtár.txt");
StreamReader str = new StreamReader(@"..\..\..\cégtár.txt");while (!str.EndOfStream)
{
Ceg c = new Ceg();
string[] adatok = str.ReadLine().Split(';');
c.Nev = adatok[0];
c.Hely = adatok[1];
c.Dbtelep = int.Parse(adatok[2]);
c.Irszam = adatok[3];
c.Szam = adatok[4];
c.Bejegyzes = DateTime.Parse(adatok[5]);
cegek.Add(c);
gyujto.Items.Add(c.Nev);}
str.Close();
//}
//catch //(FileNotFoundException fnfe)
//{
// MessageBox.Show("Elkaptalak.");
//}
errorProvider1.SetError(button1, "Próba");
}private void textBox2_Leave(object sender, EventArgs e)
{
StreamWriter w = new StreamWriter(@"..\..\..\kiírtttt.txt", false);
//for (int i = 0; i < 5; ++i)
//{
// string a, b, p, d, f, g;
// a = cegek[0].ToString();
// b = cegek[1].ToString();
// p = cegek[2].ToString();
// d = cegek[3].ToString();
// f = cegek[4].ToString();
// g = cegek[5].ToString();// w.WriteLine(a + "; " + b + "; " + p + "; " + d + "; " + f + "; " + g);
//}foreach (Ceg koztes in cegek)
{
w.WriteLine(koztes.Nev + "; " + koztes.Hely + "; " + koztes.Dbtelep + "; " + koztes.Irszam + "; " + koztes.Szam + "; " + koztes.Bejegyzes);
}
w.Close();
}private void button2_Click(object sender, EventArgs e)
{
MessageBox.Show(cegek[1].Nev.ToString());
}private void ujCegToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 ujceg = new Form2();
ujceg.Show();}
private void gyujto_SelectedIndexChanged(object sender, EventArgs e)
{
tbHely.Text = cegek[gyujto.SelectedIndex].Hely;
tbDbTelep.Text = cegek[gyujto.SelectedIndex].Dbtelep.ToString();
tbBejegyzes.Text = cegek[gyujto.SelectedIndex].Bejegyzes.ToString();
}}
}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 WindowsFormsApplication4
{
public partial class Form2 : Form1
{
public Form2()
{
InitializeComponent();
tbNev.Focus();
}private void button1_Click(object sender, EventArgs e)
{
Ceg d = new Ceg();
d.Nev = tbNev.Text;
d.Hely = tbHely.Text;
d.Dbtelep = int.Parse(tbDbTelep.Text);
d.Irszam = tbIrszam.Text;
d.Szam = tbSzam.Text;
d.Bejegyzes = DateTime.Parse(tbBejegyzes.Text);
cegek.Add(d);
DialogResult = DialogResult.OK;
}
}
} -
-Bálint.
csendes újonc
válasz
sztanozs
#7617
üzenetére


Semmit nem csináltam, csak odaírtam a végére, hogy Form1, és bedöglött, jött a hiba a Design nézetben Form2-höz.
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 WindowsFormsApplication6
{
public partial class Form2 : Form1
{
public Form2()
{
InitializeComponent();
}
}
}Egy másik programot csináltam, amikor előjött a hiba, abban azért volt több minden, de arra rájöttem, hogy a hibát ez eredményezi, amit ide bemásoltam. Az is lehet, hogy beállítás, vagy hardver probléma van. (Lenovo B41, Windows 10 64 bit, intel proci, Visual Studio 2012) Ha tanórai verziót nyitok meg, ahol már van több form is, ott nincs probléma, és a kódban nem látok különbséget.
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 WindowsFormsApplication6
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
}Köszi a segítséget!

-
-Bálint.
csendes újonc
Sziasztok!
Segítségre lenne szükségem.
Nem tudom helyesen megoldani az örökítést Visual Studioban. Csináltam két formot (Form1, Form2), és amikor a Form2.cs-ben a Form2 után kettősponttal beírom a Form1-et a Form2.cs[Design] nézet a következő hibával tér vissza:The designer could not be shown for this file because none of the classes within it can be designed. The designer inspected the following classes in the file: Form2 --- The base class 'WindowsFormsApplication6.Form1' could not be loaded. Ensure the assembly has been referenced and that all projects have been built.
Ha teszek egy gombot Form1-re, és nyomok egy Clean Solutiont, majd utána egy Build Solutiont, akkor a Form2-őn is megjelenik a gomb egy kis lakattal a bal fölső csücskében. Semmit nem lehet vele csinálni, se mozdítani, se Click eljárást írni, semmit.
Miért van ez a hiba, miért jelenik meg a Form2-őn is a gomb?
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- 27% - ASUS TUF Gaming Radeon RX 7900 XT OC 20GB GDDR6
- iPhone 12 64GB gyári független megkímélt full gyári
- Dell Inspiron 14 Plus 7440 14" 3K IPS Ultra 7 155H 32GB 1TB NVMe ujjlolv gar
- HP 250 G7 i3-8130U, 8 GB RAM, 256 NVMe SSD, 1920x1080 + Nvidia MX110
- ThinkPad T14 Gen4 14" FHD+ IPS i7-1365U 16GB 512GB NVMe gar
- Apple iPhone 12 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy A53 5G / 6/128GB / Kártyafüggetlen / 12 Hó Garancia
- Apple iPhone 14 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- Bomba ár! HP Elitebook 840 G1 - i5-4GEN I 8GB I 500GB + 32SSD I Radeon I 14" FHD I Cam I W10 I Gari!
- Csere-Beszámítás! Akció! Playstation VR 2! Újszerű állapot.
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest

(Átírtam a konstruktorokat.)

