[Ww.Xaml] Xaml i Wpf

Przy okazji pracy nad paroma rzeczami w WPFie, da sie zauwazyc rozdzielnosc XAMLa i WPFa rozumianego jako frameworka UI. XAMLa mozna wykorzystac nie tylko w WPFie ale i na przyklad rowniez w WinFormsach

Kod:
using System.Windows.Markup;
using System.Windows.Forms;
using System.IO;
using System.Xml;

namespace Ww.WpfAndWinForms {
    static class EntryPoint {
        static void Main() {
            string formsXaml = @"
                <Form xmlns='clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms'
                    FormBorderStyle='FixedSingle'
                    MaximizeBox='false'
                    MinimizeBox='false'
                    ClientSize='240,150'
                    StartPosition='CenterScreen'
                >
                    <Form.Controls>
                        <Label Text='Choose color:' Top='8' Left='16' />
                        <RadioButton Text='Red' Top='28' Left='24' />
                        <RadioButton Text='Green' Top='48' Left='24' />
                        <RadioButton Text='Blue' Top='68' Left='24' />
                        <RadioButton Text='None' Top='88' Left='24' Checked='true' />
                        <Button Text='Accept' Top='118' Left='16' Width='100' />
                        <Button Text='Cancel' Top='118' Left='124' Width='100' />
                    </Form.Controls>
                </Form>";
            using (XmlReader r = XmlReader.Create(new StringReader(formsXaml))) {
                object o = XamlReader.Load(r);
                System.Windows.Forms.Application.Run((Form)o);
            }
        }
    }
}



Plik csproj (fragment):
  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.XML" />
    <Reference Include="WindowsBase" />
    <Reference Include="PresentationCore" />
    <Reference Include="PresentationFramework" />
  </ItemGroup>

Dopoki wymagania XAMLa w stosunku do obiektow sa spelnione to taka deserializacja bedzie dzialala.

Inny pomysl jaki mi przychodzi do glowy to uzycie XAMLa jako formatu wiadomosci jakiegos rodzaju uslug. Gdzie poza standardowymi "tagami" obiektow mozna by wytworzyc extensions i jakos ciekawie wykorzystac (lepsza walidacja? jakies metadane?). Nie mam nic konkretnego na mysli, ale moglo by cos z tego wyniknac.
Opublikowane 26 lipca 07 01:01 przez Wojciech Gebczyk
Filed under: , , , ,

Powiadamianie o komentarzach

Jeżeli chciałbyś otrzymywać email gdy ta wypowiedź zostanie zaktualizowana, to zarejestruj się tutaj

Subskrybuj komentarze za pomocą RSS

Komentarze:

Brak komentarzy

Co o tym myślisz?

(wymagane) 
(opcjonalne)
(wymagane) 

  
Wprowadź kod: (wymagane)

About Wojciech Gebczyk

Code Sculptor.