Hi @all,
ich versuche mich gerade einfach zur Übung an einem eigenen NumericUpDown (aktuel nur für Integer).
Mein Ansatz ist aktuel ist folgendes Xaml-Design :
Um einen Wert mitzugeben, habe ich eine DependencyProperty im Codebehind des UserControls:
Spoiler anzeigen
Doch fehlt mir nun der eigentliche "Funktionsansatz" wie ich nun weitermachen soll, unter anderem wird der von mir per DP gesetzte Wert zwar augenscheinlich gesetzt, der angezeigte Text hingegen nicht angepasst (bei einem neu erstellten Control.)
vollständiger aktueller CodeBehind:
Spoiler anzeigen
Evtl. kann mir jemand zumindest stichpunktartig sagen was ich nun zu tun/zu beachten habe um das Control entsprechend zum laufen zu kriegen.
LG und Danke
ich versuche mich gerade einfach zur Übung an einem eigenen NumericUpDown (aktuel nur für Integer).
Mein Ansatz ist aktuel ist folgendes Xaml-Design :
XML-Quellcode
- <UserControl x:Class="IntegerNudUCL"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:local="clr-namespace:Delivery_Note_Creator"
- mc:Ignorable="d" d:DesignWidth="100" Height="26" DataContext="{Binding RelativeSource={RelativeSource Self}}">
- <DockPanel LastChildFill="True">
- <Grid>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*"/>
- <ColumnDefinition Width="10"/>
- </Grid.ColumnDefinitions>
- <Grid.RowDefinitions>
- <RowDefinition Height="*"/>
- <RowDefinition Height="*"/>
- </Grid.RowDefinitions>
- <TextBox Name="ValueTextBox" Grid.RowSpan="2" Grid.ColumnSpan="2"/>
- <Button Name="ValueUpButton" Margin="0,2,2,0" BorderThickness="0" FontSize="6" Content="∧" Grid.Row="0" Grid.ColumnSpan="1" Grid.Column="1" Click="ValueUpButton_Click"/>
- <Button Name="ValueDownButton" Margin="0,0,2,2" BorderThickness="0" FontSize="6" Content="∨" Grid.Row="1" Grid.ColumnSpan="1" Grid.Column="1"/>
- </Grid>
- </DockPanel>
- </UserControl>
Um einen Wert mitzugeben, habe ich eine DependencyProperty im Codebehind des UserControls:
VB.NET-Quellcode
- Public Property IntVal As Integer
- Get
- Return CInt(GetValue(IntValProperty))
- End Get
- Set(ByVal value As Integer)
- SetValue(IntValProperty, value)
- End Set
- End Property
- Public Shared ReadOnly IntValProperty As DependencyProperty =
- DependencyProperty.Register("IntVal",
- GetType(Integer), GetType(IntegerNudUCL),
- New PropertyMetadata(0))[/spoiler][spoiler]
Doch fehlt mir nun der eigentliche "Funktionsansatz" wie ich nun weitermachen soll, unter anderem wird der von mir per DP gesetzte Wert zwar augenscheinlich gesetzt, der angezeigte Text hingegen nicht angepasst (bei einem neu erstellten Control.)
vollständiger aktueller CodeBehind:
VB.NET-Quellcode
- Imports System.ComponentModel
- Imports System.Runtime.CompilerServices
- Public Class IntegerNudUCL
- Inherits UserControl
- Public Property IntVal As Integer
- Get
- Return CInt(GetValue(IntValProperty))
- End Get
- Set(ByVal value As Integer)
- SetValue(IntValProperty, value)
- End Set
- End Property
- Public Shared ReadOnly IntValProperty As DependencyProperty =
- DependencyProperty.Register("IntVal",
- GetType(Integer), GetType(IntegerNudUCL),
- New PropertyMetadata(0))
- Public Sub New()
- InitializeComponent()
- ValueTextBox.Text = IntVal.ToString
- End Sub
- Public Sub ValueUP()
- IntVal += 1
- End Sub
- Private Sub ValueUpButton_Click(sender As Object, e As RoutedEventArgs)
- ValueUP()
- End Sub
- Private Sub ValueTextBox_TextChanged(sender As Object, e As TextChangedEventArgs) Handles ValueTextBox.TextChanged
- Dim TmpInteger As Integer = IntVal
- If Integer.TryParse(ValueTextBox.Text, TmpInteger) Then
- IntVal = TmpInteger
- End If
- End Sub
- End Class
Evtl. kann mir jemand zumindest stichpunktartig sagen was ich nun zu tun/zu beachten habe um das Control entsprechend zum laufen zu kriegen.
LG und Danke
If Energy = Low Then
Drink(aHugeCoffee)
Else
Drink(aHugeCoffeeToo)
End If
Drink(aHugeCoffee)
Else
Drink(aHugeCoffeeToo)
End If
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „asusdk“ ()