- sziku69: Fűzzük össze a szavakat :)
- zebra_hun: Hűthető e kulturáltan a Raptor Lake léghűtővel a kánikulában?
- Luck Dragon: Asszociációs játék. :)
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- user2: Kia Ceed Gold 160 1.5 T-GDI MY2024
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Gurulunk, WAZE?!
- Magga: PLEX: multimédia az egész lakásban
- Mr Dini: Mindent a StreamSharkról!
Új hozzászólás Aktív témák
-
Szabesz
őstag
válasz
Pttypang #5614 üzenetére
2013 for Windows-ban alapból benne van a WP8 SDK, WP7-et külön telepítheted.
-
Karma
félisten
válasz
Pttypang #5599 üzenetére
Úgy, hogy bár én nagyon kényelmesnek találom az IoC konténert, a kitalálása előtt is volt élet. Nevezz ki egy objektumot a viewmodelek létrehozásáért felelősnek fejben - például a ViewModelLocator elég kézenfekvő -, csinálj tagváltozókat a VM-eknek, és példányosítsd őket kézzel.
A példányokat meg propertyken át add oda a Page-eknek, mint általában szokás.
-
Karma
félisten
-
Karma
félisten
válasz
Pttypang #5470 üzenetére
Maga az ObservableObject nem egy nagy szám, anno belinkeltem a teljes forráskódját, amit berakhatsz a projektedbe. (google://ObservableObject.cs+Mvvmlight)
Ha meg ezt nem akarod valamiért, akkor kézzel is implementálhatod az INotifyPropertyChanged interfészt, ami a változáskövetéshez kell.
-
Karma
félisten
válasz
Pttypang #5415 üzenetére
Egyébként ha nem akarsz függőleges eltolásokat (mint a példádban), hanem egy vízszintes sorba tennél több akár eltérő stílusú, külön-külön bindolt TextBlockot, akkor tudsz spórolni a layouton egy kicsit. A vízszintes StackPanel helyett használhatsz egyetlen TextBlockot, benne Runokkal az egyes szakaszoknak.
Tehát pl. a példádban:
<TextBlock ...közös stílus...>
<Run Text="{Binding LineFrom}" FontWeight="Bold" /> to: <Run Text="{Binding LineTo}"/>
</TextBlock>A Boldot példaként tettem oda.
-
Karma
félisten
válasz
Pttypang #5410 üzenetére
Az egyértelmű szerintem itt ki is merült. Na jó még egy failsafe: ugye nem használsz DisplayMemberPath-ot a template-tel együtt? Azt tudom, hogy a sima ItemTemplate azonnal kiabál, fullnál viszont nem tudom.
Egyébként milyen jellegű eltérést mutat a sablonodhoz képest?
-
Karma
félisten
válasz
Pttypang #5205 üzenetére
Ez erősen feladatfüggő, de én a VM-re szavaznék ismét. Annyira figyelj majd oda, hogy a ListPicker nem lehet üres, egy alapértelmezett elemet mindig tartanod kell benne, valamint az elemeknek helyesen kell az Equalst implementálnia, mert az alapján kezeli a kiválasztást.
-
Karma
félisten
válasz
Pttypang #5203 üzenetére
Mondtam hogy beszédes
Minden benne is van.
Amúgy ránézésre csak az a baj, hogy kisbetűvel írtad a bindingnál a property nevét. Érzékeny ám rá.adam014: A null coalescinggel csak az a baj, hogy a LINQ2XML-nél nem segít. Egyrészt a két oldalon azonos típusnak kell lennie (XElement vs String = aláhúzás), másrészt az ellen nem véd, ha a GetElement lánc közepében null valami. Sajnos.
Én amikor utoljára így parsoltam XML-t, csináltam extension methodokat, amik kicsit lerövidítették a nullchecket. Pl. string ElementValue(this XElement element, string childName, string defaultValue = null), ami a default értéket adja vissza akkor is, ha az element null, meg akkor is, ha az adott névvel nincs leszármazott tag
-
Karma
félisten
válasz
Pttypang #5194 üzenetére
"Ha jól látom akkor a leírásodban említett ObservableObject ősosztály akkor nem is szükséges, mert az sqlmetal által legenerált kódban implementálva van?"
Pontosan.
"habár ha a LayoutRoot-nak adom át a menetrend db-t,"
Ez nekem kicsit meredek így kódrészlet nélkül, de ha bemásolnád, mondhatnék rá valamit. Egyébként ha binding hiba történik, az Output fülön elég részletes rókát hagy ott az engine: honnan, mit, milyen típust hova, milyen típusként, miért nem tudott bekötni.
Ilyen "üres a lista" szituációkban érdemes ránézni.
-
Karma
félisten
válasz
Pttypang #5191 üzenetére
Apránként olvasd az osztályt, és lesz értelme
Annyiban bonyolultabb az én osztályomnál, hogy több tábla van benne - a Menetrend osztály Avasrol, Honnan és Jaratlista propertyjeivel érheted el ezeket.
Felhasználás szempontjából én húznék egy ViewModel réteget ez elé, mert bár közvetlenül erre az osztályra is bindolhatsz, de plusz logikát (pl. szűrést, számítást) nem tudsz hozzátenni.
-
sztanozs
veterán
-
kispx
addikt
válasz
Pttypang #4967 üzenetére
A szakdolgozatomnál a témavezető azt mondta, hogy platform/eszközök bemutatása nem kell, vagy ha mégis fontos a megemlítése akkor rövid és lényegre térő legyen. A hangsúly a Te programodon legyen. Szóval szerintem az első 4 fejeztetettel kezdeni kéne valamit ebből a szempontból.
-
amargo
addikt
válasz
Pttypang #4955 üzenetére
[link]
Listás adatmegjelenítés is van benne. Igazából felületen drag&drop simán hozzá lehet kötn és ObservableCollection lesz a barátod.
Egyszerű példa: [link]
Itt már mvvm követés is van [link]A WP7 könyvben pedig pont a 3-50 ábra: Az adatforrás részeinek adatkötése drag-and-drop módszerrel írják le, tehát ott van az, bár régebben egy barátom sem értette meg belőle annyira, így érdemes jól átolvasni és követni Blend-ben.
-
Karma
félisten
válasz
Pttypang #4946 üzenetére
Igazából még egyszerűbb lenne, ha már úgyis WP7-re dolgozol, ha kihasználnád a platform egyetlen igazi erősségét: a XAML-t és a data bindingot
Minden bindingnál meg tudsz adni egy StringFormat paramétert, amivel deklaratívan le tudod írni a dátumformátumot. Például:
<TextBlock Text="{Binding StartTime, StringFormat='HH:mm'}"/>Mondjuk visszatérve a problémák helyes megoldásához, a megjelenítés formátumát se illik beégetni. Most persze lehet kivétel, mert magyar alkalmazásról van szó, de akkor is. Helyette a locale-specifikus "t" formátumstring a jó.
-
vlevi
nagyúr
válasz
Pttypang #4938 üzenetére
A datumnak vannak ora, es perc propertyjei, en azokat olvasgatnam, lehet, hogy jobb, mint konvertalgatni stringbol.
Sot, lehet, irnek egy haromsoros extnesion methodod, oraperc neven, ami az orat es percet kiolvasva, osszerakna stringben. Es akkor mindenhol hivatkozhatsz ra. -
Karma
félisten
válasz
Pttypang #4938 üzenetére
Dehogynem aljas, sőőőt. Pont ez szaglott már az előbb is.
Ha csak az óra-perc kell, és nem végzel vele dátumszámítási műveleteket, akkor is kapásból van két értelmesebb tárolási lehetőséged: 1) óra integer oszlop + perc integer oszlop; vagy 2) "14:20" jellegű varchar oszlop, amibe pont ennyit írsz.
Ha meg végzel ilyet, vagy csak a helyes megoldást keresed, akkor letárolod datetimeként, és megjelenítéskor beformázod egy HH:mm formátumtringgel. Ilyenkor még az se számít, ha az év/hónap/nap egyébként nulla.
-
Karma
félisten
válasz
Pttypang #4935 üzenetére
Minden esetben a regionális beállításoktól függ a dátumformátum, szerencse hogy ilyen hamar beleszaladtál.
Eszközön meg emulátoron is át tudod állítani egyébként, így más kombinációkat is tesztelhetsz.Azt nem igazán értem, hogy mit és miért substringelsz a dátumon
Ez elég veszélyes és értelmetlen művelet...
Gyanítom valami aljasságot művelsz a DB-vel, úgyhogy nézd meg ezt a választ hogy hogy kéne dátumot kezelni ebben a helyzetben.
Amúgy ha nem DB-ről lenne szó, tárolásra és átküldésre találták ki az invariant culture-t (CultureInfo.InvariantCulture), azaz ha valamiért stringként küldesz át nem-string adatot, használd azt a formázáshoz és parse-oláshoz is.
-
amargo
addikt
válasz
Pttypang #4824 üzenetére
Csak menetrendet akarsz publikálni, vagy útvonalat is akarsz tervezni?
Menetrend esetén egy kapcsolt tábla a viszonylatokkal, így azt kapásból feltudod ajánlani. Legyen rajta egy PK és a menetrend táblában rá egy FK.
Kattintásra is össze lesz rendelve a funkció, programozni sem kell hozzá. -
-
ferensz
senior tag
válasz
Pttypang #4660 üzenetére
Első blikkre valami ilyesmi jutott eszembe:
public static bool TryGetPowerIfAny(int x, int y, out int result)
{
var flag = true;
int iter = 1;
while (flag)
{
if (Math.Abs(Math.Pow(Convert.ToDouble(x), Convert.ToDouble(iter)) - Convert.ToDouble(y)) < Double.Epsilon)
{
result = iter;
return true;
}
if (Math.Pow(Convert.ToDouble(x), Convert.ToDouble(iter)) > Convert.ToDouble(y))
{
flag = false;
}
iter++;
}
result = 0;
return false;
}
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Milyen USB töltőt vegyek?
- Nintendo Switch 2
- EAFC 25
- BMW topik
- sziku69: Fűzzük össze a szavakat :)
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- zebra_hun: Hűthető e kulturáltan a Raptor Lake léghűtővel a kánikulában?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Háborog az Apple az iPhone-ra írt első pornóapp miatt
- GTA VI
- További aktív témák...
- Asztali PC , i7 9700K , RX 5700 XT , 32GB DDR4 , 500GB NVME , 1TB HDD
- Dell Inspiron 5406 2-in-1i5-1135G7 16GB DDR4 3200 512GB NVME 14" FHD Érintőkijelző W11Pro
- Eladó MacBook Pro 14" M1 Pro (2021) 16/512 99% akku Makulátlan állapotban!
- Újszeru GIGABYTE G5 - 15.6" FullHD 144Hz - i7-13620H - 48GB - 1TB - RTX 4050 - Win11 - 1,5 év gari
- Eladó garanciás,új állapotu projektorom kihasználatlanság miatt!
- Lenovo ThinkCentre M720s SFF / M920T tower -Számla, garancia, WIN11
- Bomba ár! Lenovo ThinkPad T490s - i5-8GEN I 16GB I 512SSD I 14" FHD I Cam I W11 I Gari!
- Lenovo Legion Pro 5 16IRX9
- Dell USB-C dokkolók: (K20A) WD19/ WD19S/ WD19DC + 130W, 180W, 240W töltők
- Samsung Galaxy A12 64GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PC Trade Systems Kft.
Város: Szeged