Megosztás a következőn keresztül:


A digitális tinta használatának első lépései a WPF-ben

A Windows Presentation Foundation (WPF) rendelkezik egy digitális tinta funkcióval, amely megkönnyíti a digitális tinta beépítését az alkalmazásába.

Előfeltételek

Az alábbi példák használatához először telepítse a Visual Studiót. Emellett segít az alapszintű WPF-alkalmazások írásában is. A WPF használatának első lépéseihez lásd: Útmutató: Az első asztali WPF-alkalmazásom.

Gyors kezdés

Ez a szakasz segít egy egyszerű WPF-alkalmazás írásában, amely tintát gyűjt.

Van tinta?

Szabadkézi rajzot támogató WPF-alkalmazás létrehozása

  1. Nyissa meg a Visual Studiót.

  2. Hozzon létre egy új WPF-alkalmazást.

    Az Új projekt párbeszédpanelen bontsa ki a Telepített>Visual C# vagy a Visual Basic>Windows Desktop kategóriát. Ezután válassza ki a WPF-alkalmazás (.NET-keretrendszer) alkalmazássablont. Adjon meg egy nevet, majd kattintson az OK gombra.

    A Visual Studio létrehozza a projektet, a MainWindow.xaml pedig megnyílik a tervezőben.

  3. Írja be <InkCanvas/> a <Grid> címkék közé.

    XAML-tervező InkCanvas címkével

  4. Nyomja le az F5 billentyűt az alkalmazás hibakeresőben való elindításához.

  5. Toll vagy egér használatával írjon hello world az ablakban.

Megírtad a digitális tinta "hello world" alkalmazásának megfelelőjét mindössze 12 billentyűleütéssel!

Dobd fel az alkalmazásodat

Használjuk ki a WPF egyes funkcióit. Cserélje le a nyitó és a záró <Window> címkék közötti mindent a következő formázásra:

<Page>
  <InkCanvas Name="myInkCanvas" MouseRightButtonUp="RightMouseUpHandler">
    <InkCanvas.Background>
      <LinearGradientBrush>
        <GradientStop Color="Yellow" Offset="0.0" />
          <GradientStop Color="Blue" Offset="0.5" />
            <GradientStop Color="HotPink" Offset="1.0" />
              </LinearGradientBrush>
    </InkCanvas.Background>
  </InkCanvas>
</Page>

Az XAML színátmenetes ecsettel hátteret hoz létre a rajzolási felületen.

Színátmenetes felület a tintázási felületen a WPF-alkalmazásban

Adjon hozzá kódot az XAML-hez

Bár az XAML megkönnyíti a felhasználói felület tervezését, minden valós alkalmazásnak hozzá kell adnia kódot az események kezeléséhez. Íme egy egyszerű példa, amely az egér jobb kattintásával nagyítja a tintát.

  1. Állítsa be a MouseRightButtonUp kezelőt az XAML-ben:

    <InkCanvas Name="myInkCanvas" MouseRightButtonUp="RightMouseUpHandler">
    
  2. A Megoldáskezelőben bontsa ki a MainWindow.xaml fájlt, és nyissa meg a mögöttes fájlt (MainWindow.xaml.cs vagy MainWindow.xaml.vb). Adja hozzá a következő eseménykezelő kódot:

    private void RightMouseUpHandler(object sender,
                                     System.Windows.Input.MouseButtonEventArgs e)
    {
        Matrix m = new Matrix();
        m.Scale(1.1d, 1.1d);
        ((InkCanvas)sender).Strokes.Transform(m, true);
    }
    
    Private Sub RightMouseUpHandler(ByVal sender As Object, _
                                    ByVal e As System.Windows.Input.MouseButtonEventArgs)
    
        Dim m As New Matrix()
        m.Scale(1.1, 1.1)
        CType(sender, InkCanvas).Strokes.Transform(m, True)
    
    End Sub
    
  3. Indítsa el az alkalmazást. Adjon hozzá egy kis tintát, majd kattintson az egér jobb gombjával, vagy végezzen nyomás és tartás műveletet egy tollal.

    A kijelző nagyít, valahányszor a jobb egérgombbal kattint.

Eljárási kód használata XAML helyett

Az eljárási kódból az összes WPF-funkció elérhető. Ezeket a lépéseket követve hozzon létre egy "Hello Ink World" alkalmazást a WPF-hez, amely egyáltalán nem használ XAML-t.

  1. Hozzon létre egy új konzolalkalmazás-projektet a Visual Studióban.

    Az Új projekt párbeszédpanelen bontsa ki a Telepített>Visual C# vagy a Visual Basic>Windows Desktop kategóriát. Ezután válassza ki a Console App (.NET Framework) alkalmazássablont. Adjon meg egy nevet, majd kattintson az OK gombra.

  2. Illessze be a következő kódot a Program.cs vagy Program.vb fájlba:

    using System;
    using System.Windows;
    using System.Windows.Controls;
    class Program : Application
    {
        Window win;
        InkCanvas ic;
    
        protected override void OnStartup(StartupEventArgs args)
        {
            base.OnStartup(args);
            win = new Window();
            ic = new InkCanvas();
            win.Content = ic;
            win.Show();
        }
    
        [STAThread]
        static void Main(string[] args)
        {
            new Program().Run();
        }
    }
    
    Imports System.Windows
    Imports System.Windows.Controls
    
    
    Class Program
        Inherits Application
        Private win As Window
        Private ic As InkCanvas
    
    
        Protected Overrides Sub OnStartup(ByVal args As StartupEventArgs)
            MyBase.OnStartup(args)
            win = New Window()
            ic = New InkCanvas()
            win.Content = ic
            win.Show()
    
        End Sub
    
    End Class
    
    Module Module1
    
        Sub Main()
            Dim prog As New Program()
            prog.Run()
    
        End Sub
    
    End Module
    
  3. A MegoldáskezelőBen a Hivatkozások elemre kattintva és a Hivatkozás hozzáadása gombra kattintva hivatkozásokat adhat hozzá a PresentationCore, a PresentationFramework és a WindowsBase-szerelvényekhez.

    A PresentationCore-t és a PresentationFramework-et bemutató Reference Manager

  4. Az alkalmazás létrehozása az F5 billentyű lenyomásával.

Lásd még