Výpis řady čísel
Požadavky na absolvování
2. VypisRadyWPF
2.5. Výsledný kód
XAML kód
Výsledný XAML kód formuláře (MainWindow.xaml) - viz Kód 1.
<Window x:Class="VypisRadyWPF.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:VypisRadyWPF" mc:Ignorable="d" Title="Výpis deseti čísel na obrazovku (4 varianty)" Height="350" Width="800"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <TextBox Name="TxtVypis" Height="70" Margin="5" TextWrapping="Wrap" Text="Výpis řady čísel" Width="400" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Background="AliceBlue" IsReadOnly="True"/> <StackPanel Grid.Row="1"> <WrapPanel HorizontalAlignment="Center"> <Button Name="BtnFor" Content="1. deset For" Margin="5" Width="110" Height="30" Click="BtnFor_Click"/> <Button Name="BtnWhile" Content="2. deset While" Margin="5" Width="110" Click="BtnWhile_Click"/> <Button Name="BtnDoWhile" Content="3. deset Do While" Margin="5" Width="110" Click="BtnDoWhile_Click"/> <Button Name="BtnBezCyklu" Content="4. deset bez Cyklu" Margin="5" Width="110" Click="BtnBezCyklu_Click"/> <Button Name="BtnMazat" Content="Mazat" Margin="5" Width="110"/> </WrapPanel> <WrapPanel HorizontalAlignment="Right"> <Button Name="BtnKonec" Content="Konec" Margin="5" Width="80" Padding="5" Click="BtnKonec_Click"/> </WrapPanel> </StackPanel> </Grid> </Window>
Kód 1: Výsledný XAML kód vytvořeného formuláře
C# kód
Code Behind - C# kód pro veškeré události vyvolané uživatelem při manipulaci s aplikací (MainWindow.xaml.cs) - viz Kód 2.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace VypisRadyWPF { /// <summary> /// Interaction logic for MainWindow.xaml /// </summary> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void BtnFor_Click(object sender, RoutedEventArgs e) { // Deklarace: 'i' ... řídící proměnná cyklu - čítač (vypisované číslo) int i; // Vymazání předchozí výpisu řady this.TxtVypis.Clear(); // Cyklus s krokem (proběhne 10x) for (i = 1; i <= 10; i++) { // Test, zda již bylo vypsáno první číslo... if (i > 1) { // Přidání čárky za každé číslo this.TxtVypis.Text += ", "; } // Připojení čísla do výpisu na formuláři ('i' konverze na text) this.TxtVypis.Text += i.ToString(); } } private void BtnWhile_Click(object sender, RoutedEventArgs e) { // Deklarace: 'i' ... řídící proměnná cyklu - inicializace čítače int i = 11; // Vymazání předchozí výpisu řady this.TxtVypis.Clear(); // Cyklus s podmínkou na začátku while (i <= 20) { // Test, zda již bylo vypsáno první číslo... if (i > 11) { // Přidání čárky za každé číslo this.TxtVypis.Text += ", "; } // Připojení čísla do výpisu na formuláři ('i' konverze na text) this.TxtVypis.Text += i.ToString(); // Inkrementace čítače o 1 i++; } } private void BtnDoWhile_Click(object sender, RoutedEventArgs e) { // Deklarace: 'i' ... řídící proměnná cyklu - inicializace čítače int i = 21; // Vymazání předchozí výpisu řady this.TxtVypis.Clear(); // Cyklus s podmínkou na začátku do { // Test, zda již bylo vypsáno první číslo... if (i > 21) { // Přidání čárky za každé číslo this.TxtVypis.Text += ", "; } // Připojení čísla do výpisu na formuláři (konverze 'i' na text) this.TxtVypis.Text += i.ToString(); // Inkrementace čítače o 1 i++; } // Testování řídící podmínky k vykonání další iterace while (i <= 30); } private void BtnBezCyklu_Click(object sender, RoutedEventArgs e) { // Deklarace: 'i' ... řídící proměnná cyklu - inicializace čítače int i = 31; // Vymazání předchozí výpisu řady this.TxtVypis.Clear(); // Výpis čísla na formulář TxtVypis.Text = i.ToString(); // Inkrementace čítače o 1 i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); i++; TxtVypis.Text += ", " + i.ToString(); } private void BtnMazat_Click(object sender, RoutedEventArgs e) { // Vymazání předchozího výpisu řady this.TxtVypis.Clear(); } private void BtnKonec_Click(object sender, RoutedEventArgs e) { // Zavření formuláře this.Close(); } } }
Kód 2: Výsledný C# kód vytvořeného formuláře a metod jeho prvků
Výstup programu
Na následujícím obrázku vidíme výstup naší aplikace pro výpis různých číselných řad - viz Výstup programu - Kód 1 a 2. Výpisy jsou spouštěny pomocí příslušných tlačítek jednotlivých typů cyklů. Aplikaci lze ukončit pomocí tlačítka Konec, nebo pomocí zavíracího tlačítka umístěného v pravém rohu aplikace.

Výstup programu - Kód 1 a 2: Výpis číselné řady od 1 do 10 pomocí cyklu s krokem