Zum Inhalt springen

WPF XAML ValidationTyp Binding


HJST1979

Empfohlene Beiträge

Hallo

ich hoffe hier kann mir jemand helfen ich habe folgende XAML- Datei


<UserControl x:Class="LabelTextbox"

             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:HJSTFaktura.Steuerelemente"

             xmlns:System="clr-namespace:System;assembly=mscorlib"

             mc:Ignorable="d" 

             DataContext="{Binding RelativeSource={RelativeSource Self}}"

             x:Name="LabelTextbox"

             Height="22" Width="Auto"

             d:DesignHeight="22" d:DesignWidth="435">

    <WrapPanel>

        <Label Width="{Binding Path=HJSTLabelBreite}" Height="24" VerticalAlignment="Top" Content="{Binding Path=HJSTLabelContent}"></Label>

        <Label Width="5"></Label>

        <TextBox x:Name="Textbox1" Width="{Binding Path=HJSTTextboxBreite}" Style="{StaticResource ResourceKey=StyleTextBox}" Height="22">

            <Binding Path="HJSTTextboxText">

                <Binding.ValidationRules>

                    <local:MyValidationRules ValidatesOnTargetUpdated="true">

                        <local:MyValidationRules.Params >

                            <local:ValidationParams [COLOR="#FF0000"]ValidationType[/COLOR]="{Binding [COLOR="#FF0000"]HJSTValidationType[/COLOR]}"></local:ValidationParams>

                        </local:MyValidationRules.Params>

                    </local:MyValidationRules>

                </Binding.ValidationRules>

            </Binding>

        </TextBox>

    </WrapPanel>

</UserControl>

Nun zu den roten Markierungen:

- Gebe ich den ValidationType direkt an --> alles einwandfrei, Code reagiert wie gewünscht.

Ich möchte ihn aber als DependencyProperty angeben --> das Funktioniert nicht, kein Fehlermeldung

Ich habe zwar schon das ein oder andere gelesen aber die gefundenen Lösungen gehen nicht.

Was ich herausgefunden habe ist, dass ich das DependencyProperty scheinbar nicht im Zugriff habe (Datacontext) aber ich weiß auch nicht wie ich es angeben kann.

Hoffe auf eure Hilfe

Danke schonmal

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

folgender Fehler kommt (den ich irgendwie übersehen hatte)

System.Windows.Data Error: 2 : Cannot find governing FrameworkElement or FrameworkContentElement for target element. BindingExpression:Path=HJSTValidationType; DataItem=null; target element is 'ValidationParams' (HashCode=39642524); target property is 'ValidationType' (type 'ValidationTypes')

Gruß Hans-Jörg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

das was ich probiert hatte, hatte schon immer ohne dass es mir aufgefallen ist "funktioniert" aber halt nicht komplett richtig.

Ich bekomme nun keinen Fehler mehr, ABER die Validierung wird "nur" überprüft, wenn ich in die Textbox erst einen Wert schreibe und danach wieder lösche und danach die Textbox verlasse.

Die ValidationRule prüft ob ein Wert drin steht oder nicht.

Gruß Hans-Jörg

Bearbeitet von HJST1979
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

wie man den oberen Fehler wegbekommt, dass habe ich jetzt teilweise hinbekommen. Warum teilweise: Ich habe ein noch viel größeres "allgemeines" Problem festgestellt.

Ich arbeite ja auch für den Wert mit {Binding...} und DepencyProperty solange ich überhaupt keine ValidationRule habe kommen alle Informationen zum Ursprungsobjekt hin und zurück.

Sobald ich aber eine ValidationRule habe die auf einen Fehler läuft kommt nicht der aktuelle Wert im Ursprungsobjekt an, sondern der Programmablauf scheint irgendwie "abzubrechen". Dies bedeutet das der letzte "gültige" Wert im Ursprungsobjekt steht.

Mal sehen, wie ich das hinbekomme ;)

Gruß Hans-Jörg

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bitte. :)

Ich will zwar keine Werbung machen... aber, habe da einen ziemlich guten Buchtipp:

http://www.amazon.de/Windows-Presentation-Foundation-4-5-umfassende/dp/3836219565/ref=sr_1_1?ie=UTF8&qid=1389949855&sr=8-1&keywords=wpf+galileo

Damit konnte ich mich in der letzten Jahreshälfte in ca. 2-3 Wochen ziemlich gut in das ganze Zeug einlesen. Vielleicht ist das ja auch was für dich...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...