Tako bo izgledal naš končni produkt.
Imeli bomo vnosno polje, v katerega bomo vnesli tekst (opomin). S klikom na gumb ga bomo shranili v beležko/opomnik.
Ko opomina ne bomo več potrebovali, ga bomo z gumbom (kljukico) izbrisali.
|
![]() |
![]() |
|||
Preprost opomnik v C# WPF |
|||
![]() |
|||
|
|||
|
|||
![]() |
|
|||||
![]() Tako bo izgledal naš končni produkt. Imeli bomo vnosno polje, v katerega bomo vnesli tekst (opomin). S klikom na gumb ga bomo shranili v beležko/opomnik. Ko opomina ne bomo več potrebovali, ga bomo z gumbom (kljukico) izbrisali. |
|||||
|
|||||
![]() Najprej si pripravimo vizualno okolje. V MainWindow.xaml datoteki spremenimo krepki del teksta, ki sem ga označil (saj imate ostal del že generiran). <Window x:Class="Opomnik.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Opomnik" Height="300" Width="300" ResizeMode="NoResize"> <Grid> </Grid> </Window> |
|||||
|
|||||
![]() Okno naše aplikacije sedaj razdelimo z dvema lomilnima črtama (modre barve). -prvi: V vizalnem pregledu se z miško premaknemo po vertikalnem ali horizontalnem robu aplikacije, kjer se pojavi rumenkasto oranžna lomilna črta. Ko stisnemo levi miškin klik se ta rob (ki določa stolpec ali vrstico) uveljavi (koda se avtomatsko doda). -drugi: Dodamo slednjo xaml kodo ZNOTRAJ <Grid></Grid> značke: <Grid.ColumnDefinitions> <ColumnDefinition Width="250"/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition Height="209"/> <RowDefinition /> </Grid.RowDefinitions>
Ker smo aplikacijo naredili fiksno (300 x 300) si mere preprosto določimo. <ColumnDefinition Width="250"/>
<ColumnDefinition/> Z 1. značko smo določili 250 enot širok stolpec. Kaj za preostalih 50 enot (300-250)? |
|||||
|
|||||
![]() Sedaj dodajmo vnosno polje in gumb, ki bo omogočal da opomnik dodamo na seznam (seznam bomo ustvarili v naslednjem koraku). Pod kodo iz prejšnega koraka, a še vedno v <Grid> znački dodajmo slednje: <TextBox Grid.Row="1" TextWrapping="Wrap" Name="NovOpomin" AcceptsReturn="True"></TextBox> <Button Grid.Row="1" Grid.Column="1" Click="dodaj_Click">!</Button>
<TextBox> kontrola nam omogoča vnos teksta. Dodamo ji par lastnosti: -Name="NovOpomin" globalno ime spremenljivke v C# kodi. (Iz kode bomo preko NovOpomin dostopali do te kontrole) -Grid.Row="1" (Stolpca nismo nastavili na 0, saj sta privzeto vrstica in stolpec nastavljena na 0)
|
|||||
|
|
|||||
![]() Pod kodo iz prejšnega koraka (še vedno smo v znački <Grid> ) dodajmo kontrolo, ki bo shranjevala naše opomnike, ter jo ovijmo v kontrolo ki bo omogočila "scrollanje" kadar bomo imeli veliko opomnikov! <ScrollViewer VerticalScrollBarVisibility="Auto" Grid.ColumnSpan="2"> <StackPanel Name="Seznam" ></StackPanel>
</ScrollViewer>
ScrollViewer omogoča prikaz drsnika. Lastnost VerticalScrollBarVisibility="Auto" pove da se naj drsnik pokaže le takrat ko je potrebno. Grid.ColumnSpan="2" Hočemo da se naša kontrola razteza čez oba stolpca. |
|||||
|
|||||
![]() Sedaj ko je uporabniški vmesnik pripravljen pojdimo na kodo. (MainWindow.xaml.cs) Nastavimo mu napis: Text = text (ki je prišel v metodo UstvariOpomin) Ter TextWrapping (Iz enakega razloga kot pri TextBoxu iz prejšnih korakov) Ker hočemo funcijo brisanja mu dodamo .Click metodo odstrani_Click (glej nasledni korak), katera se sproži ob kliku na gumb. |
|||||
|
|||||
![]() Dodajmo še zadni dve metodi. Se še spomnite da smo dodali globalno ime za seznam opomnikov in textbox? Tukaj ju sedaj koristimo. odstrani_Click se sproži ob kliku na gumb iz prejšnega koraka. |
|||||
|
|||||
![]() Končali smo. Aplikacija bi morala delovati :) |
|||||
|
|||
|
|
||||||||||||
|
![]() |
|
||||||
![]() |
||||||||
|
||||||||
![]() |
![]() |
|