Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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
Nyissa meg a Visual Studiót.
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.
Írja be
<InkCanvas/>a<Grid>címkék közé.
Nyomja le az F5 billentyűt az alkalmazás hibakeresőben való elindításához.
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.
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.
Állítsa be a
MouseRightButtonUpkezelőt az XAML-ben:<InkCanvas Name="myInkCanvas" MouseRightButtonUp="RightMouseUpHandler">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 SubIndí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.
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.
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 ModuleA 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.
Az alkalmazás létrehozása az F5 billentyű lenyomásával.
Lásd még
.NET Desktop feedback