[ Predrag Supurovic @ 20.12.2021. 23:39 ] @
Imam apliakciju za koju zelim da napravim dve verzije koje ce se razlikovati samo po nazivu i ikoni. Sve ostalo treba da bude isto.

Nesto sam petljao sa shared projektom u okviru solution-a sa idejom da imam dva projekta koji koriste Shared a koji u stvari sadrzi celu funkcionalnost.

Medjutim zapeo sam kod toga sto u Shared projektu nemam resurse vec samo u na dva druga projetka a u resursima treba da stoji naziv aplikacije i ikona, slicice za dugmice i svasta jos.

Da li je neko pokusavao da naravi ovako nesto?

[ mmix @ 12.01.2022. 09:15 ] @
Mi radimo multibranding aplikacije, ali u WPFu.

Imam poseban assembly koji sluzi samo za skinovanje glavne WPF aplikacije, poslovna logika je ionako izdvojena u svoje asemblije. Projekat je u gitui koristimo merge modules da implantiramo sve sem skininga iz shared repositorija. Sad, to je dosta lakse raditi sa WPFom jer su resursi integrisani u XAML i mogu da se koriste direktno, dok god se naravno imena podudaraju.
[ Predrag Supurovic @ 12.01.2022. 11:52 ] @
Moja je aplikacija WIndows forms. Hteo sam da primenim slicnu logiku ali mi nesto ne ide.

[ Shadowed @ 12.01.2022. 12:11 ] @
Mozes li da napravis proof of concept solution sa tri projekta koji su ekvivalentni tome sto imas?

BTW, mmix, huh, dobro je, mislio sam da samo jos ja radim WPF
[ dusans @ 12.01.2022. 12:33 ] @
U shared projektu vučeš brending informacije iz neke klase (komponente/šta god) koja se isto nalazi u shared projektu (a ne direktno iz resursa).
U branding 1 projektu, na startup-u inicijalizuješ komponentu sa informacijama prvog brendinga.
U branding 2 projektu, na startup-u inicijalizuješ komponentu sa informacijama tog drugog brendinga.

Odavno ne radim winforms, ali pretpostavljam da u ovoj situaciji ne bi mogao da ovo primeniš kroz winforms designer
ali bi svakako mogao kroz code behind, tipa da napraviš extension metodu za sve forme koja bi upucavala branding tekstove/ikone tamo gde treba.

WPF je po ovom pitanju mnogo fleksibilniji pošto možeš da gađaš podatke iz resource dictionary-s a koje možeš da bootstrap-uješ kako ti je volja.
[ mmix @ 12.01.2022. 17:31 ] @
Citat:
Shadowed:
BTW, mmix, huh, dobro je, mislio sam da samo jos ja radim WPF :D


Ima nas puno. Dosta ljudi polako prelazi na Avaloniu, doduse, ali to nama jos nije opcija jer smo debelo uvezani sa Infragisticsom. Bude li Infragistics ikad portovao WPF set na Avaloniu, WPF ce biti izbacen a klijenti polako portovani na Linux.



Citat:
dusans:
Odavno ne radim winforms, ali pretpostavljam da u ovoj situaciji ne bi mogao da ovo primeniš kroz winforms designer
ali bi svakako mogao kroz code behind, tipa da napraviš extension metodu za sve forme koja bi upucavala branding tekstove/ikone tamo gde treba.


Mozda bi i mogao koristeci nas pristup preko merged modula. Samo je logika razmisljanja malo invertovana. U shared projekat zapravo ide sve SEM brendinga. Svaki klijent ima svoj git repo u koji je injected shared projekat i dodat branding projekat. Sam za sebe shared prpojekat nijje buildable jer externals nisu satisfied, ali kad se pomesa sa branding asemblijem externals su sad tu, sve ostalo resava compiler/linker



Btw, Pedja, ako samo menjas naziv i ikonicu, sto jednostavno to ne resavas u deploymentu. ucitaj ikonicu iz fajla, naziv iz nekog config fajla. Kad pustas kod kllijenta samo injectuj ikonicu i config fajl u bin folder. Mislim da ti je to mozda najjednostavnije resenja ako vec ne brendiras celu aplikaciju (teme i ostalo)
[ mjanjic @ 14.01.2022. 03:51 ] @
https://docs.microsoft.com/en-us/dotnet/core/extensions/resources