Új hozzászólás Aktív témák
-
Alexios
veterán
válasz
BTminishop
#7459
üzenetére
asp.net mvc
-
Alexios
veterán
Ha már rövidebben akarod akkor:
if ((Kiserocimkek.Count(a => EredetiKiserocimkek.Any(b => (a.EloirtDarab != b.EloirtDarab) || (a.Vonalkod != b.Vonalkod))) > 0)
return true;Viszont itt nincs semmiféle sorrend, minden elem össze van hasonlítva mindegyikkel, eleve ha fontos az index, akkor nem nagyon fogod linq-val megírni
-
Alexios
veterán
pedig ahol list<int> van ott hashset<int>-nek is mennie kéne, ugyanaz a namespace

Amúgy lista.distinct() és kivannak szűrve a duplikált elemek
Illetve olvashatóbb a kódod ha egy megametódus helyett, amiket ráadásul regionnal szedsz szét, amiket most regionokbe raktál kirakod egy külön metódusba és azokat hívod meg.(főleg hogy lényegében mind ugyanazt csinálja, és 3x kell leírnod mikor egy metódusba elég lenne 1x és azt 3x meghívni)
-
Alexios
veterán
válasz
MineFox54
#7400
üzenetére
Ahogy felettem is írták, ha a dictionary elemére akarsz hivatkozni mert a cntk az(nem "változó konstruktor" akármire is gondoltál ezalatt
) akkor [entry.Value.Name]. Viszont jótanács: használj sokkal kifejezőbb neveket, elbírja azt a plusz bájt adatot a gép, cserébe sokkal olvashatóbb lesz a kód. -
Alexios
veterán
válasz
semij9699
#7382
üzenetére
mármint mi nem megy? a 3-al való osztás vizsgálata?
int a = int.Parse(kezdoTxt.Text);
int b = int.Parse(vegTxt.Text);
for (int cv = a; cv <= b; cv++){
if(cv%3 == 0){
Console.WriteLine(cv);
}
}szerk: upsz, most látom a darabszáma kell, nem kiiratni, de ebből már mennie kéne

-
Alexios
veterán
válasz
semij9699
#7376
üzenetére
C#-hoz ennek viszonylag kevés köze van, akkor már inkább a keretrendszered - gondolom winforms vagy wpf. Legegyszerűbb megoldás ha az eseménykezelőjükben(click esemény) megváltoztatod a másik gomb enabled-jét az ellenkezőjére. Nagyon egyszerűen pl.
Button.IsEnabled = !Button.IsEnabled
,vagy rakhatsz egy elágazást is hogyif(Button.IsEnabled == false)
{
Button.IsEnabled = true;
} else
{
Button.IsEnabled = false;
}Aztán persze lehetnek erre szebb megoldások, de gondolom neked most inkább ilyesmi kell

-
Alexios
veterán
Mivel alapvetően a webforms nem az mvc alapja, ezért nem tudsz onnan szintet lépni, mert tök más a kettő, a webforms megértésével nem kerülsz közelebb a másikhoz. Én manapság biztos nem szopatnám magam webforms-al hacsak nem kényszerítenek rá.
Ha már szintlépés akkor (szerintem) érdemesebb az mvc 5-el foglalkozni, majd utána a core-al
-
Alexios
veterán
-
Alexios
veterán
Neked sincs igazad

Ugyanis ha statikusan hozol létre egy változót akkor nem lesz olyan hogy Alma.x és Korte.x csak Fruit.x-ként tudod elérni, így pedig máris nem lehet azzal összezavarni, hogy ha az egyikben változtattad miért változott a másikban is.
Illetve a kérdésedhez:
A statikus változók nagyon nem is helyezkedhetnének a managed heap-en kívül máshol, de a lokális változók is ott helyezkednek el. -
Alexios
veterán
válasz
MeghaL0L
#7202
üzenetére
Nem tudom, hogy most miként oldottad meg, de most hirtelen ami eszembejut, hogy csinálsz egy eseménykezelőt a "fő" toggleswitchedre ami ki/be kapcsolja az összeset, illetve egy másikat a többinek, ami csak az adott controlt kapcsolgatja, plusz a főt
(#7203) Heavyrain Hol akadtál el? Gombra beolvasáshoz openfiledialog, azzal megkapod a fájl elérési útját, beolvasod a fájlt, írsz bele, amit akarsz. Miután megvan a fájl, textboxból beolvasásnál ugyanúgy hozzá tudsz írni akármit, stb. Megnyitásnál hogy megnézd a ### részt, gondolom vagy az első vagy az utolsó ### kell, fájlt megtudod nyitni szintén openfiledialog-al, aztán mondjuk regex-el megkeresed.
-
Alexios
veterán
A tömböt még a beolvasás előtt hozd létre, mivel max 10db-ot olvashatsz be ezért egy 10 elemű tömb tök jó neked(vagy használhatnál listát is, de gondolom itt tömböt kell)
ez esetben:int[] tomb = new int[10];
Ezzel létrehoztál egy új, 10 elemből álló tömböt, a mostani kódodnál egy egy elemű tömböt hozol létre, amiben az egyetlen elem a szam változó tartalma.
Minden sikeres beolvasásnál el tudod menteni ebbe a tömbbe az elemeket, és onnantól tudsz keresni rajta, meg amit akarsz. -
Alexios
veterán
Nyílván a var k=0 esetben doublet szeretnél akkor nem ezt használod, vagy eletszerubb esetben mondjuk mint ososztaly/interfész szeretnél rá hivatkozni de ezek azért nem a kifejezett hiba esetek, bár az overloaded esetben nem értelek hiszen vissza teresi értékkel nem lehet overloadolni, ha meg rossz paramétert adsz meg akkor nem a neked rosszabbat fogja adni, hanem azt amit meghivtal.
Én pl mindig vart használok, azokkal a kivetelekkel amikor vagy nem lenne egyértelmű ezek alapján mi az, vagy tényleg csak valamelyik interfész részét akarom mondjuk láttatni.
-
Alexios
veterán
válasz
alratar
#7165
üzenetére
nincs semmi ok a kerülésére, illetve sok helyzetben, pl. linq meg hasonló esetekben egyszerűbb is mint kitalálni mi lesz az eredmény.
Igazából semmi varázslat nincs benne, intellisense behelyettesíti helyetted kb, ha ráviszed a kurzorod a var szóra is kiírja milyen típus van mögötte.
-
Alexios
veterán
válasz
MeghaL0L
#7139
üzenetére
Akkor annak az eseménykezelőjére, amihez szeretnéd
Rég foglalkoztam már ezzel, de emlékeim szerint még a textblocknak is van tapped eseménye, de ettől még szerintem jobban járnál valami olyannal ami eleve arra van kitalálva hogy megnyomják, egy sima button-t is át lehet dizájnolni akár, hogy úgy nézzen ki mint egy szöveg -
Alexios
veterán
Mert ha Add(i,j)-ként akarod hozzáadni, akkor két( a példából kiindulva gondolom int) paramétert akarsz átadni, ahelyett, hogy egy kétdimenziós tömböt adnál - ami már más overload lenne. Szóval ha mindenképp így akarod tárolni az elemeket akkor pl. lista.Add(new int[i,j])
-
Alexios
veterán
válasz
turbobusa
#6714
üzenetére
A végén nem azt mondod, hogy a változó értéke legyen 0 és 1, hanem azt mondod, hogy ide helyettesítse be a paramétert(az 1. és 2. paramétert) amit megadsz a szöveg után.
Mivel stringen belül van, így eleve nem is tudnál ott értéket adni a változónak, az egész {0}..{n} lényegében csak egy placeholder a stringen belül, ahol jelzed, hogy oda akarod beilleszteni majd a változódat. -
Alexios
veterán
Azért csak az utolsó marad mert itt:
sorok=sor.Split(' ').ToList();
Mindig felülírod a sorok listát egy új listával.
A split metódus egy tömböt hoz létre ami a felosztás utáni stringeket tartalmazza. Ebből a ToList-el csinálsz egy string típusú listát, lényegében a tömböt alakítod át listává. A sorok=sor.Split kóddal nem hozzá adod a listához új értékként, hanem azt mondod hogy a sorok erre a listára mutasson. Vagy csinálsz egy listát ami List<string> típust fogad és abba rakod bele a .Add metódussal, vagy szebb megoldásként csinálhatsz pl. egy osztályt amibe beolvasod az árfolyamokat és ezeket rakod a listába. -
Alexios
veterán
Húha, mennyire új neked a programozás?

Elég egyértelműen leírja amúgy a hibát, a metódus második paramétere más típusú mint amit vár.
Nullreference-t meg korábban valószínűleg azért kapsz mert String str3 = key.GetValue("CurrentVersion")
itt keresed a CurrentVersion kulcsot, de valószínűleg nem talál ilyet, azaz nullal tér vissza, amire meghívod a tostring metódust, de mivel amin meghívod null így exception-t fog dobni -
Alexios
veterán
Megnéztem a xaml-t a desktop verzióban ha azt próbáltad, ennyi van benne:
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
</Grid>Szóval mint látod ez egy üres grid, ezért látsz egy üres fekete képernyőt.
A windows phone változat alatt pedig az a baja hogy nem mainpage.xaml a fájl neve hanem basicpage1, így azt nem is találja(nem is tudom lefordul-e egyáltalán így)Universal app-nál(amennyire én tudom, csak fél szemmel nézegettem utána eddig) mind a két alkalmazásnak ugyanannak a fájlnévnek(vagyis osztálynak de most ez mindegy) kell lennie a két projektben, ha megnézed a shard projectben az app.xaml.cs-ben látod hogy:
rootFrame.Navigate(typeof(MainPage)
Azaz MainPage típusú oldalra navigál, ha meg ez nincs a wp projekt-nél, csak basicpage típus akkor nem tud oda navigálni.Szóval vagy töröld ki a BasicPage1.xaml-t és illeszd be MainPage.xaml néven, ekkor automatikusan MainPage nevű osztályokat fog létrehozni, vagy a xaml fájl tetején x:Class="App1.MainPage" legyen illetve a xaml.cs-ben is írd át az osztály nevét meg a konstruktor nevét.
-
Alexios
veterán
A stringeket nem lehet megváltoztatni, így nem fogod tudni kicserélni egyik karakterét sem, max új stringet hozhatsz létre, vagy stringbuilder-t használsz.
pl:
string szov1 = "szoveg";
string fv()
{
string szov2 = szov1[1];
return szov2;
}Mondjuk a kódoddal több gond is van, pl. minek returnölöd a szov1 változót mikor amúgy sem módosítasz rajta semmit?
Char-t használva is megoldódik amúgy, akkor pedig:string szov1 = "szoveg";
char fv()
{
char szov2 = szov1[1];
return szov2;
}Nem teljesen világos milyen rengeteg vesszőre gondoltál számomra a char esetében.
-
Alexios
veterán
válasz
trisztan94
#5557
üzenetére
canvas.zindex
-
-
Alexios
veterán
válasz
trisztan94
#5527
üzenetére
-
Alexios
veterán
válasz
zsambek
#5503
üzenetére
Bár annyira nem néztem most át a kódod, és nem tudom mennyire ismered a debug-olási lehetőségeket, de azért jóljöhet, ha breakpointokat helyezel el ott ahol nem azt csinálja a programod amit szeretnél, nagyobb eséllyel fogsz rájönni arra, hogy mi a baj magadtól, hiszen látod a változók aktuális értékeit pl.
Bár hirtelen elnézve szerintem az a kód ebben a formában jó.
Viszont ilyet:
Convert.ToString(szo1)
tökfölösleges csinálni, hiszen a szo1 eleve egy string, a foreachnél látszik a deklaráció -
Alexios
veterán
válasz
trisztan94
#5483
üzenetére
Ott a forrása, akár hozzáadhatsz még egy gombot
Vagy esetleg egy popup-ba raksz valamit, és ugyanúgy fog kinézni szerintem, abba meg annyi gombot raksz amennyit szeretnél. -
Alexios
veterán
válasz
trisztan94
#5452
üzenetére
tempLista = new List<Tipus>(eredetiLista);
Lehet van erre valami más megoldás is, de így tuti új példányt hoz létre
-
Alexios
veterán
válasz
trisztan94
#5448
üzenetére
ez a megoldás azért se lesz jó, mert ha menet közben a user elengedi a gombot, majd onnan folytatja, akkor azt a helyet fogja kiindulópontnak venni. Nem tudom, hogy a completed eventedbe mi van, de pl. ha csak a translatetransform-al állítod ilyenkor a pozícióját, akkor egyszerűen azt nullázd le, és visszaugrik a helyére.
Megmondani amúgy úgy tudod, hogy a translatetransformját beállítod arra, vagy canvas-t használsz, és ott ugye a set meg top property-kkel beállítod.
-
Alexios
veterán
Persze, lehet a többi cuccnál is eltávolította csak a commandokat, nem is komolyan mondtam azért is volt a smiley

Viszont ami érdekelne, mert ebbe igazából mindig belezavarodok, hogy pl. miért jobb itt most neki Struct-ot használnia Class helyett? Az oké, hogy a struct az értéktípus, a class meg referencia, de mivel a struct-on belül stringet is tárol, ami ugye referenciatípus, így nem problémás?
-
Alexios
veterán
válasz
trisztan94
#5429
üzenetére
mondjuk ha eventeket használsz a code behindban - márpedig ahogy látom a manipulation dolgokat úgy van, - akkor annyira nincs szeparálva a logika meg a view mvvm-el

-
Alexios
veterán
válasz
Alexios
#5425
üzenetére
illetve ha jól emlékszem minden frameworkelementnek van egy Tag property-je is, az is kiegészítő adat megadására van
Ja erre meg:
Én itt arra gondoltam, hogy csinálok egy globális Word típusú változót, amiben benne lesz a behúzott kártya List<Word> értéke. Ez hülyeség?Szerintem az, kicsit overkillnek hangzik, ha nagyon már valami ilyesmit akarsz akkor is bőven elég lenne csak az id-ket eltárolni, és összehasonlítani, mert ha jólértem az ugyanaz mindkettőnél.
-
Alexios
veterán
válasz
trisztan94
#5424
üzenetére
dependencyproperty az amire te gondolsz html data tagként. Csinálsz egy custom controlt, ami erre épül, adsz neki egy dependency property-t, és annak azt adsz meg amit akarsz
-
Alexios
veterán
válasz
haromegesz14
#5301
üzenetére
return tombneve;
-
Alexios
veterán
válasz
trisztan94
#5296
üzenetére
a button content vagy child/ren elemei közt(hirtelen nem emlékszem melyik van neki) ott lesz a textblock.
-
Alexios
veterán
válasz
haromegesz14
#5290
üzenetére
és mi nem megy akkor pontosan?
Esetleg ha egy kódrészletet beraknál könnyebben tudnánk segíteni -
Alexios
veterán
válasz
haromegesz14
#5287
üzenetére
pl. ciklussal mész végig rajta. for-nál ugye eleve ott van a ciklusváltozó amit nézhetsz, while-nál illetve foreachnél pedig egy saját változót növelsz mindig egyel.
-
Alexios
veterán
válasz
Flashback
#5208
üzenetére
lényege az, hogy megfogod tudni hivni xelementen is, mintha "saját" metódusa lenne. Pontosabban olyan típushoz tudod meghívni ami elé a "this" szót adod a metódus paraméterlistájában
trisztani94: helyzettől függően null coalescing pl, vagy akár extension method
Én ahol lehet null coalescinget használok mert sokat tud röviditeni a kódon, főleg ha több null ellenőrzés is lenne az if-en belül, az itt csak annyi hogy: xyz = x??y??z pl. -
Alexios
veterán
válasz
Flashback
#5199
üzenetére
Vagy ott van még a "null coalescing" operátor(nemtudom hogy van magyarul
) azaz pl:valami = (string)b.Element("valami") ?? String.Empty
Tehát ha a (string)b.Element("valami") null, akkor itt egy üres stringet állit be pl neki, ha meg nem null, akkor meg azt ami az értéke lenne -
Alexios
veterán
válasz
trisztan94
#5143
üzenetére
pl. MVVM pattern használatával, kb adja magát wp alatt, amúgyis lényegében a bindingra van kitalálva az egész
-
Alexios
veterán
válasz
trisztan94
#5128
üzenetére
Ezt leginkább sehogy
-
Alexios
veterán
válasz
trisztan94
#5126
üzenetére
Hát arányokkal értelmesebbnek tűnik dolgozni, mint bebetonozott margókkal szerintem, bár ez a láthatatlan gombos kép elé rakott cucc sem semmi már

-
Alexios
veterán
válasz
trisztan94
#5124
üzenetére
És megcsinálod két külön képarányra fix margókkal?
Illetve a 8.1 még több támogatott képarányt fog tudtommal behozni -
Alexios
veterán
válasz
trisztan94
#5122
üzenetére
hát passz, emulátorban van minden képarány, ott tudod próbálgatni, de a dizájnerrel nem tudom mivan. Bár őszintén szólva nem értem mit értesz az alatt, hogy ott rakod össze a kinézetet

-
Alexios
veterán
válasz
trisztan94
#5120
üzenetére
hátteret úgy hogy button.Background = valamilyen brush, ha képre akarod, akkor new ImageBrush(new BitmapImage(new Uri(...))
-
Alexios
veterán
válasz
trisztan94
#5112
üzenetére
Hát meglehet csinálni, de nem tűnik nagyon értelmes dolognak

-
Alexios
veterán
Tipuskonverzióra melyik a jobb, az as vagy a (tipus)? Most utánanéztem, és az as valamivel gyorsabb, de ugye ezt értéktípusra nem lehet használni(meg kb 3% volt az eltérés), van erre valamilyen ajánlás, hogy melyiket használjuk inkább?
-
Alexios
veterán
Lenne egy elég hát lehet hülye kérdésem, de nem igazán csináltam még custom controlt win8 alatt.
[link]
Ez alapján próbálkozom, addig megvan, hogy csináltam egy templated controlt, illetve a xaml résznél kitöltöttem a generált generic.xaml-t. Viszont a code behind elég zavaros, csináltam egy Source dependency propertyt(bitmapimage típusút, bár nem tudom az kell-e). A probléma az eventen belül van, mert a _scrollViewer meg _image objektumokat hol kéne létrehoznom pl? Illetve nem teljesen világos, hogy mi hívja meg ezt az eseményt sem. -
Alexios
veterán
válasz
trisztan94
#5063
üzenetére
var butt = (Button)buttons_first_row.Children.ElementAt(2);
vagy
var butt = buttons_first_row.Children.ElementAt(2) as Button;
-
Alexios
veterán
válasz
Doctor46
#4984
üzenetére
én a harmadik képen úgy látom nagyjából megvan:
a case 1-ben ne csak irasd ki(azt akár berakhatod a metódusba is), hanem hivd meg azt a metódust amiben megvalósítod amt akarsz, pl. a harmoszog2-t, akkor:case 1:
haromszog2();
break;
case 2:
valamimas();
break;de amúgy ezen programon belül szerintem tökfölösleges statikusnak csinálni a metódusokat, illetve a switch elágazásba rakj be egy default: részt, hogy ha valaki rossz karaktert ütne be, illetve én tryparse-ba raknám az egészet, ne legyen gond abból, hogy valaki betűt ír be pl.
-
Alexios
veterán
válasz
trisztan94
#4889
üzenetére
mondjuk a xaml az kb ugyanaz wpf, silverlight meg winrt alatt is, szóval annyira nem vészes ilyen szempontból
Ú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!
- GYÖNYÖRŰ iPhone 11 Pro Max 64GB Midnight Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3253, 100% Akksi
- Telefon felvásárlás!! Samsung Galaxy A12/Samsung Galaxy A22/Samsung Galaxy A32/Samsung Galaxy A52
- Bomba ár! Lenovo V15-ADA - Ryzen 5 I 8GB I 256SSD I 15,6" FHD I Radeon I HDMI I Cam I W11 I Gari
- Netatmo Presence okos kültéri kamera / 12 hó jótállás
- BESZÁMÍTÁS! MSI B550M R9 3900X 32GB DDR4 500GB SSD RX 7800XT 16GB Corsair 4000D Cooler Master 750W
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest




Illetve a 8.1 még több támogatott képarányt fog tudtommal behozni

