Hirdetés
- MIUI / HyperOS topik
- Elképesztő erővel rúgta be a Dimensity 9400 az ajtót
- DIGI Mobil
- Minden a BlackBerry telefonokról és rendszerről
- Most a három Galaxy S25 képernyő bukott le
- Samsung Galaxy Z Fold5 - toldozás-foldozás
- Yettel topik
- Samsung Galaxy A54 - türelemjáték
- iPhone topik
- Apple iPhone 15 - a bevált módszer
Új hozzászólás Aktív témák
-
szoke12
őstag
Sziasztok!
C# WPF-ben programozgatok és szeretnék egy nagyobb programot írni.
A tervem az, hogy a program Futás közben egy adatbázisban hozna létre magának táblákat. A kérdésem az, hogy a létrejött táblákat később hogyan tudom kezelni. Hisz gondolom azokhoz is létre kéne hozni az entitásokat. vagy ez hogy működik?"Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"
-
szoke12
őstag
válasz lord.lakli #7606 üzenetére
Elég speciális célra írom, tervrajzokból hámoz ki adatokat, és azokat szeretném egy-egy táblában megőrizni. Bár hajlok afele, hogy kiexportálom egy olyan állományba, amit vissza is tudok majd olvasni vele.
Entity-vel készítem, csak még annak se merültem mélységeibe. De lassacskán haladok."Élj úgy, hogy ha majd lepereg előtted életed filmje, érdemes legyen végignézni!"
-
martonx
veterán
válasz lord.lakli #7608 üzenetére
Ha meg előre annyira nem ismert, akkor mehet nosql-el, bár az ismeretlen adat struktúrát nemcsak letarolni nehéz, de visszaolvasni is.
Én kérek elnézést!
-
amargo
addikt
Volt valami hír arról, hogy az MS korlátozza/lezárja a PCL-t? Van egy Sln-em, ami ilyeneket tartalmaz én most kaptam nem rég Windows8.1-re, de a Windows10-re is frissítést és azóta a Studio crashel folyton, amikor megnyitom az Sln-t. PCL projektekre tudtam beazonosítani a hibát.
Tud valaki ilyen problémáról másnál is?
ui nem csak nálam fordult elő, hanem akivel van egy közös projektünk, annál is.“The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”
-
Froclee
őstag
Múlt pénteken megjelent a .NET Core 2.
Nektek tapasztalatok a Core-ról? Van rajtunk kívül valaki, aki használja productionben?
-
-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?
-
-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!
[ Szerkesztve ]
-
-
-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;
}
}
} -
sztanozs
veterán
válasz -Bálint. #7620 üzenetére
Tök felesleges származtatni, csak az egyik formból meg kell hivatkozni a másikat (vagy egy közös ős kell mind a kettőnek) - de ahhoz, hogy a Form2-ből egy másik formra adatot tudj felvinni nem származtatás kell, hanem a másik form referenciája.
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
-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.[ Szerkesztve ]
-
-Bálint.
csendes újonc
válasz BTminishop #7623 üzenetére
Oké, bocsi.
-
nagyúr
-
MATEO6600
őstag
Hi!
Adott egy komoly és alapos C# tudás, viszont C++ és C-ből teljesen 0-án állok, és szeretném megtanulni ezt a 2 nyelvet is.
Tudnátok nekem valami javasolt könyvet / weboldalt / pluralsight tutorialt adni, aminek érdemes nekiállnom?
Rengeteg oktató anyag van, de általában 0 programozási tudásról indítanak, viszont nekem itt van a C# tudásom. -
Goose-T
veterán
válasz MATEO6600 #7628 üzenetére
Semmire sem mennél vele, tök fölösleges ma már C-t és C++-t tanulni. Van még pár terület, ahol hasznos lehet, de ez a programozói munkaerőpiac kb. 1%-a. Inkább tanulj elméletet, sokkal többre mész vele. Ezeknek nézz utána első körben: Clean code, GoF patterns, SOLID.
Rockbandám: https://fb.me/scharlotterhodes *** Gitárelektronikai műhelyem: https://www.fb.me/goosetgitar
-
MATEO6600
őstag
válasz Goose-T #7629 üzenetére
Én lennék a legboldogabb ember ha igazad lenne.
De sajnos rengeteg helyen nyomják még ezeket a nyelveket.
Én pl img processing területén vagyok nagyon jártas, azt viszont a legritkább esetekben csinálják C# alatt, túlnyomórészt a C++ dominál, ezért is lenne szükségem a C++ tudásra ha el szeretnék helyezkedni benne.
Az általad felsorolt elmélettel tisztában vagyok.[ Szerkesztve ]
-
kispx
addikt
válasz MATEO6600 #7628 üzenetére
C++ topikban több szerencsével járnál.
De azért itt hagyom Stroustrup ajánlását. -
valyogvisko
csendes tag
Sziasztok,
volna egy (valószínűleg számotokra primitív) kérdésem, kérnék némi segítséget: szeretnék egy progit írni, ami megnyit egy xml fájlt, és tudok benne keresni és kilistázni dolgokat.
A lényeges rész így néz ki:
private void openButton_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "XML|*.xml";
if (ofd.ShowDialog() == DialogResult.OK)
{
XmlDocument doc = new XmlDocument();
doc.Load(ofd.FileName);
}
}
private void searchButton1_Click(object sender, EventArgs e)
{
if (searchInput1.Text != null && searchInput1.Text.Length >= 3)
{
foreach (XmlNode node in doc.DocumentElement)
{
string name = node.Attributes[0].InnerText;
if (name == searchInput1.Text)
{
foreach (XmlNode child in node.ChildNodes)
{
listView1.Items.Add(child.InnerText);
}
}
}
}
else
{
MessageBox.Show("Invalid Input");
searchInput1.Text = string.Empty;
searchInput1.Focus();
}
}Alapvetően minden jó, kivéve a "doc.DocumentElement" részt, mert egy olyan doc-ra hivatkozom, ami ott, abban a private részben nem létezik (lévén hogy egy szintén private részben nyitottam meg, ha jól értem a problémát). Amit én szeretnék, hogy az "openButton" úgy nyissa meg az xml-t, hogy az mindenhol a későbbiekben "látható" legyen. Maga a progi minden használatkor egyetlen xml-t fog megnyitni, tehát biztos hogy lehetne valahogy egyszerű módon megoldani a gondot, de nem minden használatkor ugyanazt, ezért én nem tudom, hogyan kellene
Kérlek nézzétek el nekem a nem megfelelő szóhasználatot, 3 napja láttam először C# kódot, bőven van még mit tanulnom belőle, szóval ha lehet akkor tételezzünk fel határtalan intelligenciát és nagyon kevés tárgyi tudástKöszönöm.
[ Szerkesztve ]
HTC, LG
-
BTminishop
aktív tag
válasz valyogvisko #7632 üzenetére
Globális változó kell, hogy legyen az XML példányosításod.
private XmlDocument doc = new XmlDocument(); -
valyogvisko
csendes tag
válasz BTminishop #7634 üzenetére
Köszi a választ.
Lehet, hogy ez jó megoldás, viszont szül egyéb problémákat (az alatta lévő sor definíciója innentől nem jó, az utána következő buttonöket nem ismeri fel, etc) Mint mondtam, meglehetősen friss vagyok még a témában - részleteznéd egy kicsit pontosabban, milyen egyéb módosításokkal jár még ez?
HTC, LG
-
Froclee
őstag
válasz valyogvisko #7635 üzenetére
Az emlitett sort a metoduson kivulre rakd, ne belulre.
-
valyogvisko
csendes tag
válasz Froclee #7636 üzenetére
Királyság, mondtam hülye vagyok, így működik
Köszi.
Mint kiderült, van még mit finomítani a megjelenítésen, példán keresztül egyszerűbb:
itt egy példaxml:
Ebből keresésnél ez lesz (noveny1,2,3):
Amit én szeretnék, az két dolog:
- "vigye át" az entert a megjelenítésbe (Wordpad, Notepad++ tudja, ez meg nem foglalkozik vele)
- új keresésnél legyen megint üres a listview, bár ezt talán én is meg tudom oldani, ha goyrsan megy, inkább megkérdezem ittEzek (főleg az első) hogyan oldhatóak meg?
Előre is köszi.
HTC, LG
-
valyogvisko
csendes tag
válasz valyogvisko #7637 üzenetére
Ehh, szerkeszteni már nem tudom, de a második részét megoldottam, csak az érdekelne, hogyan lehetne a note-okat korrektül megjeleníteni, köszi.
HTC, LG
-
sztanozs
veterán
válasz valyogvisko #7638 üzenetére
XML nem törődik a sortöréssel. De ha mindenképp azonos kell, akkor rakd bele CDATA szekcióba , vagy rakj a sor végére értelmezhető/kicserélhető sorvége szekvenciát (pl. \r\n).
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
valyogvisko
csendes tag
Ez jól hangzik, de magát az xml-t nem én írom, én csak keresek benne/bennük. De majd akkor szerkesztgetem kicsit, köszi.
[ Szerkesztve ]
HTC, LG
-
summers
tag
Sziasztok!
Valaki tudna esetleg megoldást egy tömb elemeinek minden lehetséges sorrendben való kiírására? Mondjuk van egy 10-es tömb amit feltöltünk 1-10-ig számmal, két tömb nem tartalmazhat ugyanolyan számot, és minden lehetséges sorrendben írja ki a program.
-
summers
tag
Ha van egy x,y,z koordináta rendszerben pl. 10 pontod, melyik a legrövidebb út, amelyikkel mindegyik pontot érintheted. Arra gondoltam, hogy sorba rendezni minden lehetőség szerint, minden sorrendnél összeadni a pontok közötti távolságot, ezzel megkapnám a teljes út hosszát az adott sorrendben, ezután pedig kiválasztani a legkisebbet az összes sorrend közül. Csak az egyszerűség kedvéért írtam a tömb tartalmára 1-10-ig számokat. A módszer lenne a lényeg, amivel sorba lehetne rendezni minden lehetőség szerint a tömböt.
[ Szerkesztve ]
-
nagyúr
O olyan utat akar, ami minden pontot erint, szoval Dijkstra nem lesz jo. Ez sajnos NP-nehez, a BHF lehet jo, de az is lassu (es feltetelezem, hogy nem fogja tudni konnyeden implementalni). 10 elem eseten vegulis siman mehet a brute force kereses.
while (!sleep) sheep++;
-
Domonkos
Ármester
A futasido a tomb meretevel valoban !-os aranyban lesz, viszont ezt valahogy el is varna az ember, leven hogy pont ugyanennyi outputot szeretne. A jo dolog viszont az, hogy normalis implementacio mellett, 10 elemre ez szinte semmi. Gyors implementalva a 3628800 sor kiiratasahoz nem kell .5s-nel tobb ido; ha pedig elhagyom a kiiratast, akkor .2s alatt vegez az osszes permutacioval. Kulcsszo a melysegi bejaras / backtrack. Es a memoria miatt sem kell aggodni...
Gender of electrical connectors is defined by the pins.
-
Domonkos
Ármester
Koszonom, ezzel tisztaban vagyok.
Par rovid merest elvegezve ezek jottek ki nalam. 10-10 futas atlagolva:
Kiiras terminalba (kis bufferrel): 2.291s
Kiiras terminalba (megfeleloen bufferelve): .592s
Kiiras normal fileba, SSD-re: .157s
Kiiras a /dev/null-ba: .146s
A programot ujraforditva, a kiiras reszt elhagyva: .017s (!!!)Ebbol jol latszik, hogy itt nem a permutalgatason fog elmenni az ido. Az utolso tesztbol pedig az, hogy a program idejenek csupan az 1/8 resze a "lenyegi resz". A maradek idot a kiiras is a kiiras formazasa viszi el. Szoval annyival egeszitenem ki, hogy persze nem mindegy, hogy hova irod, de az sem mindegy, hogy egyaltalan kiirsz-e valamit Egy ugyanakkora nagysagrendet meg tudsz sporolni azzal is, ha teljesen elhagyod a kiiratast, mint amilyet akkor, amikor lassu outputrol gyorsra valtasz
Aki nem hiszi, implementalja utanamSzerk: Annyit hozzatennek, hogy a kiiras elhagyasakor otletem sincs, hogy a fordito pontosan milyen ordogi optimalizaciokat eszkozolt, amit akkor nem tett, amikor siman kiirattam. Ennek kideriteset kicsit kesobbre hagyom. Amit az ugy erdekeben tettem, hogy argv-bol olvastam az inputot es abba az agba amit kiirataskor el lehetett hagyni raktam egy szamlalot. Igy talan nem optimalizal annyit - de ennel jobban nem melyedtem bele...
[ Szerkesztve ]
Gender of electrical connectors is defined by the pins.
-
summers
tag
Köszönöm a válaszokat! Igazából nem is kell az összes sorrendet kiírnia, csak azt az egyet amelyikhez a legrövidebb út tartozik minden pontot érintve. A permutáción akadtam el, hogy hogy lehetne C#-ban megírni. Meg az, hogy lehetne e alkalmazni pl. 70 pontra.
[ Szerkesztve ]
Ú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!
- CADA, Polymobil, és más építőkockák
- Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Parfüm topik
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- Vírusirtó topic
- MIUI / HyperOS topik
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Háztartási gépek
- Kerékpárosok, bringások ide!
- Gaming notebook topik
- További aktív témák...
- ASUS ROG STRIX B550-F GAMING
- BONTATLAN Dell Latitude 5540 CTO:i7 1370P (14mag),16GB DDR5,512GB SSD,GeForce MX550,400nit 100%sRGB
- Thinkpad P15 Gen2i 27% 15.6" FHD IPS i7-11800H T1200 32GB 512GB NVMe ujjolv gar
- Dell Precision 3520, 3541 workstation notebook-ok 16-32Gb RAM, Quadro M600, P600, számla
- HUAWEI MateBook 16: Ryzen 7 5800H,16GB,512GB,16" 2.5K 2520x1680 350nit 100%sRGB,Radeon RX Vega 8
Állásajánlatok
Cég: Ozeki Kft
Város: Debrecen
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest