wer benutzt eigentlich noch winforms?
-
hallo die frage steht oben, und ich wollt mal wissen, ob ihr alle ausnahmslos mit Wpf arbeitet, oder ob es durchaus noch leute gibt, die Winforms ok finden.
Ich stell mir die Frage, weil ich ein privates Projekt gestartet habe, und auf WinForms setze.Ich habe auch mit WPF gearbeitet, aber finde, dass Winforms einfacher ist, auch wenn es nicht so viele Möglichkeiten bietet, wie Wpf.
-
Hallo
Ich lese mich gerade in WPF ein und bin sehr begeistert. Es spricht aber trotzdem nichts gegen WinForms. Ich werde jetzt aber immer WPF nehmen, schon alleine, weil Praxis den Meister macht. Man kann die Techniken ja auch kombinieren.
chrische
-
Die Windows Forms werden natürlich in allen Legacy Projekten verwendet. Aber auch seit WPF draussen ist, gibt es sicherlich noch einen Haufen neue Projekte, welche auf Windows Forms setzen. Sei es, weil sie einfach auf bewährtes setzen wollen, oder weil sie die neuen Features nicht benötigen. Es ist nicht so, dass Microsoft die Windows Forms mit dem Erscheinen von WPF einfach zu dumpen plant
dotnetler schrieb:
Ich habe auch mit WPF gearbeitet, aber finde, dass Winforms einfacher ist, auch wenn es nicht so viele Möglichkeiten bietet, wie Wpf.
Das ist doch ganz okay so
MfG
-
Ich setze noch komplett auf WinForms. Es fehlt einfach die Zeit sich in WPF einzuarbeiten. Die Kunden wollen schnell und günstig neue Projekte haben. Und neue Technologien sollte man nicht am Kunden testen. Es gibt einfach zu viele kleinigkeiten die einen am Ende viel Zeit kosten die niemand zahlen will.
-
Oder weil man auch mit dem Compactframework etwas macht und die gleiche Codebasis braucht.
-
Ein Hindernis ist, dass man die Framework-Version 3.0+ mit deployen muss. Was beim Zielrechner nicht immer gewünscht ist. Außerdem gibt auch noch das Problem, dass WPF unter Windows XP nicht wirklich gut funktioniert. Zumindest was 3D-Zeug betrifft. Das 3D-Rendering passiert unter XP im Gegensatz zu Vista nämlich immer per Software. Solange XP vorherrschend ist, werden wir wohl WinForms einsetzen.
WinForms als Legacy-Bibliothek zu betrachten finde ich zu verfrüht. Wohl eher ist WPF noch "bleeding edge". Die (kommerziellen) Bibliotheken dafür sind noch nicht wirklich ausgereift und die Tools funktionieren noch nicht immer so wie sie sollten, wie etwa der Designer in VS2008.
-
wer den designer in VS benutzt gehoert eh bestraft
wenn designer dann expression blend - oder so wie ich das bevorzuge - alles per code
sobald ich ein neues wpf fenster anfang - resize ich den designer weg sodass ich nur den code seh, dann erstell ich mein fenster, erst wenn ich es am ende nochmal ueberpruefen will schau ich in den designer rein - das wars
datatemplates oder styles mit triggers usw kann man in dem designer eh nicht machenzudem erstellt der designer unnoetigen und nervigen code
der designer in VS ist nur was fuer spielkinderzb ich moechte ein fenster - angenehm gross
oben ein titel - dann eine listview und unten ok, cancel und apply welches rechts sein soll - natuerlich alles resizableso wuerd ich das machen (komplett ausn kopf ohne designer)
1. Width, Heigh [Min*, Max*] definieren, evtl noch andere eigenschaften wie resize grids, startup location usw
2. <Grid></Grid> weg damit
3.<DockPanel> <TextBlock DockPanel.Dock="Top" Text="{DynamicResource IDS_TITLE}" /> <StackPanel Orientation="Horizontal" DockPanel.Dock="Bottom" HorizontalAlignment="Right" Margin="10,5"> <Button Content="{DynamicResource IDS_OK}" Padding="10,0" IsDefault="True" /> <Button Content="{DynamicResource IDS_CANCEL}" Padding="10,0" Margin="2,0" IsCancel="True" /> <Button Content="{DynamicResource IDS_APPLY}" Padding="10,0" /> </StackPanel> <ListView ItemSource="{Binding}" x:Name="List"> <ListView.Resources> <DataTemplate x:Key="CheckBoxItem"> <CheckBox IsChecked="{Binding IsSelected}" Margin="1" /> </DataTemplate> <DataTemplate x:Key="CheckBoxHeader"> <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center"> <CheckBox IsChecked="True" /> <TextBlock Margin="2,0,0,0" Text="{DynamicResource IDS_CHECK}" /> </StackPanel> </DataTemplate> <DataTemplate x:Key="TextBoxItem"> <TextBlock Text="{Binding Name}" VerticalAlignment="Center" /> </DataTemplate> </ListView.Resources> <ListView.View> <GridView> <GridViewColumn HeaderTemplate="{StaticResource CheckBoxHeader}" CellTemplate="{StaticResource CheckBoxItem}" /> <GridViewColumn Header="{DynamicResource IDS_NAME}" CellTemplate="{StaticResource TextBoxItem}" /> </GridView> </ListView.View> </ListView> </DockPanel>
macht das mal so einfach mit dem designer, aber am besten genauso klarer code #gg
das soll jetzt nur bedeuetet das VS im designer keine entscheidungsgrundlage dar stellt
ich fang nie was mit forms an jetzt wo wpf da ist, und auch wir in der firma stellen keine forms applikationen her -
C++ = MFC
C# = WPFfuer legacy kann ichs verstehen - am sonsten aber gar nicht - die einschrenkungen im UI design sind mir in forms viel zu viel
(natuerlich werden die strings per DynamicResource aus mergeddictionaries gelesen zur spaeteren lokalisierung)
(weils grad so spass gemacht hat, hab ich gleich eine checkbox im header gebastelt, fuer select/deselect all)
-
wer den designer in VS benutzt gehoert eh bestraft
wenn designer dann expression blend - oder so wie ich das bevorzuge - alles per code
sobald ich ein neues wpf fenster anfang - resize ich den designer weg sodass ich nur den code seh, dann erstell ich mein fenster, erst wenn ich es am ende nochmal ueberpruefen will schau ich in den designer rein - das wars
Du bastelst entweder als Hobby weils spaß macht oder wirst rein nach Anwesenheit bezahlt.
-
aus hobby programmier ich auch - was daran liegt das ich mein hobby als beruf hab
{aber auch private code ich viel}
nur - ich hab auch diverse prototypen in der firma entworfen und bin staendig dabei interne tools zu entwickeln
wer sehr schnell zu einem richtigen designer ohne code will sollte eh expression blend verwenden wie ich schon schrieb
durch die auto-fill in VS hat man auch so sehr schnell die richtigen controls getippt - kein thema
wer das nicht macht der hatts nur noch nie produktiv eingesetzt
wenn man in VS im designer ein button zieht - hat man auf einmal 3 verschiedene settings drinne welchen einen bei einer resizable applikation eher hinderlich sind - da braucht man eher mehr zeit die applikation zu modifizieren
-
Mr Evil schrieb:
aus hobby programmier ich auch - was daran liegt das ich mein hobby als beruf hab
{aber auch private code ich viel}
nur - ich hab auch diverse prototypen in der firma entworfen und bin staendig dabei interne tools zu entwickeln
wer sehr schnell zu einem richtigen designer ohne code will sollte eh expression blend verwenden wie ich schon schrieb
durch die auto-fill in VS hat man auch so sehr schnell die richtigen controls getippt - kein thema
wer das nicht macht der hatts nur noch nie produktiv eingesetzt
wenn man in VS im designer ein button zieht - hat man auf einmal 3 verschiedene settings drinne welchen einen bei einer resizable applikation eher hinderlich sind - da braucht man eher mehr zeit die applikation zu modifizierenWomit Du bestätigst, dass der VS-Designer für WPF noch sehr unausgereift ist. Ich brauche ihn doch genau für solche Sachen, damit ich mir nicht merken muss wie ich jedes Fitzelding ins Fenster bekomme. Code schreiben kann ich auch mit einem Editor.
-
Wie Mr EVIL schon sagte macht man es eben mit EX.Blend. Diese arbeitet auch direkt mit VS zusammen.
-
expression blend:
vorteil:
- designer ist recht einfach zu bedienen und uebersichtlich
nachteil:
- code editor kann kein intellisense oder autovervolstaendigen geschweige denn automatisches schliessen der nodes
- es werden codeteile stellenweise unnoetig erstellt bzw zu detailiertvisual studio
vorteil:
- code editor kann intellisense, auto vervolstaendigung und schliesst nodes automatisch, man ist sehr schnell
nachteil:
- der editor hat kaum dynamische einstellungen der controls
- keine moeglichkeit templates, styles, bindings zu entwerfen
- es werden viele settings gesetzt welche nacharbeitung beduerfenes ist doch so - man hat doch eigentlich immer eine genaue vorstellung wie das fenster aussehen soll
da ueberlegt man sich vorher wie man es aufbaut mit den panels usw
dann hat man das in recht kurzer zeit im code (vs) eingetippt welches sich dann auch dynamisch anpasst, sei es beim resizen des fensters, oder anpassen der controlls sobald ein textfeld sich zur laufzeit aendert (zb wenns uebersetzt wird)
wenn ich das auch wollte im designer, wuerde ich es entwerfen, und dann ncoh nacharbeiten muessen - das dauert unter umstaenden doppelt so langwer ein designer braucht der kann VS und Blend gemeinsam offen haben, in blend das fenster entwerfen, und in VS dann den code dazu - feddich ist
ist soweit ich weiss auch die "microsoft method"schlussfolgern sag ich das WPF nicht nur mehr als ein eye candy ist - das framework dafuer ist ziemlich stabil - fenster sind sehr schnell erstellt und man kann in sehr kurzer zeit seine design wuensche realisieren
wir in der firma gehen wie gesagt auch direkt von c++ mit der MFC auf c# mit der WPF, mit forms fangen wir erst gar nicht an
-
ich habe bevor ich an winforms kam immer mit java + swing gearbeitet. komplettes gui handgecoded.
als ich dann irgendwann mal an den designer von VS geraten bin musste ich vor begeisterung direkt nen kollegen anrufen und ihm erzählen, wie einfach das doch alles ist
ich finde den designer toll... man kann sich in wenigen sekunden (!) einfach zusammenklicken, was man braucht und muss noch nichtmal über containment hierarchie nachdenken. und bisher hat alles, was ich auf diese weise hergestellt habe bestens funktioniert. der zeitgewinn den man hat beim verwenden des designers hat ist enorm, finde ich. nur ein borderlayout-panel würde ich mir noch wünschen.