Click here to Skip to main content
15,860,861 members
Home / Discussions / WPF
   

WPF

 
QuestionFormat Percentage Pin
Kevin Marois13-Apr-21 9:16
professionalKevin Marois13-Apr-21 9:16 
AnswerRe: Format Percentage Pin
Richard Deeming13-Apr-21 22:36
mveRichard Deeming13-Apr-21 22:36 
GeneralRe: Format Percentage Pin
Kevin Marois14-Apr-21 7:42
professionalKevin Marois14-Apr-21 7:42 
QuestionAvalonEdit Sytax Highlighting for XAML files? Pin
#realJSOP5-Apr-21 8:57
mve#realJSOP5-Apr-21 8:57 
AnswerRe: AvalonEdit Sytax Highlighting for XAML files? Pin
Richard Deeming6-Apr-21 0:22
mveRichard Deeming6-Apr-21 0:22 
QuestionRevert Property Change Pin
Kevin Marois5-Apr-21 7:20
professionalKevin Marois5-Apr-21 7:20 
AnswerRe: Revert Property Change Pin
#realJSOP5-Apr-21 8:55
mve#realJSOP5-Apr-21 8:55 
QuestionUI not updating Pin
#realJSOP28-Mar-21 3:52
mve#realJSOP28-Mar-21 3:52 
VS 2017
.Net 4.72
-------------------------------
I'm writing a WPF app that instantiates a class like this:
C#
public class MyClass : INotifyPropertyChanged
{
    private string currentFile;
    private int    fileCount  ;
    public string CurrentFile 
    { 
        get {return this.currentFile;} 
        set {if(value!=this.currentFile){this.currentFile=value;this.NtfyPropChange();}}
    }
    public int FileCount
    { 
        get {return this.fileCount;} 
        set {if (value != this.fileCount){this.fileCount=value;this.NtfyPropChange();}}
    }

    public MyClass()
    {
        this.CurrentFile = string.Empty;
        this.FileCount   = 0;
    }

    public void DoSomethingWithFiles()
    {
        string[] files = Directory,.GetFiles(@"c:\mypath", *.*);
        foreach(string file in files)
        {
            this.CurrentFile = file;
            this.FileCount += 1;
        }
    }
}


In the XAML, I'm binding like this:
<TextBlock Text="{Binding x:Name="textblockCurrentFile" Path=myObject.CurrentFile}"/>
<TextBlock Text="{Binding x:Name="textblockFileCount" Path=myObject.FileCount}"/>


In my INotifyPropertyChanged-derived form, I have set the DataContext, instantiated MyObject, and when I inspect everything under the debugger, the two MyObject properties in question are being updated as expected as the method loop proceeds. In fact, if I hook the MyObject.PropertyChanged event in the form code, it is indeed called for every property change event.

Problem:

The form controls that are bound to these properties don't update when the property values change.

The MyObject class is created on the UI thread, and the method is not, itself, being executed in a different thread.

What am I dong wrong (or not doing at all)?

I tried doing this in the PropertyChanged event handler in the form, but it didn't fix my problem:

C#
private void Tfs_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
{
    Dispatcher.BeginInvoke(new Action(() => 
    {
        this.textblockCurrentFile.Text = this.myObject.CurrentFile;
        this.textblockFileCount.Text = this.myObject.FileCount.ToString();
    }));
}

".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

AnswerRe: UI not updating Pin
Pete O'Hanlon28-Mar-21 6:10
subeditorPete O'Hanlon28-Mar-21 6:10 
GeneralRe: UI not updating Pin
#realJSOP28-Mar-21 6:40
mve#realJSOP28-Mar-21 6:40 
AnswerRe: UI not updating Pin
Richard Deeming28-Mar-21 22:20
mveRichard Deeming28-Mar-21 22:20 
GeneralRe: UI not updating Pin
#realJSOP29-Mar-21 2:59
mve#realJSOP29-Mar-21 2:59 
AnswerRe: UI not updating Pin
Gerry Schmitz29-Mar-21 9:15
mveGerry Schmitz29-Mar-21 9:15 
GeneralRe: UI not updating Pin
#realJSOP29-Mar-21 10:38
mve#realJSOP29-Mar-21 10:38 
GeneralRe: UI not updating Pin
Gerry Schmitz29-Mar-21 11:24
mveGerry Schmitz29-Mar-21 11:24 
GeneralRe: UI not updating Pin
#realJSOP29-Mar-21 12:07
mve#realJSOP29-Mar-21 12:07 
GeneralRe: UI not updating Pin
Gerry Schmitz29-Mar-21 12:19
mveGerry Schmitz29-Mar-21 12:19 
GeneralRe: UI not updating Pin
#realJSOP29-Mar-21 23:33
mve#realJSOP29-Mar-21 23:33 
GeneralRe: UI not updating Pin
Richard Deeming29-Mar-21 21:36
mveRichard Deeming29-Mar-21 21:36 
GeneralRe: UI not updating Pin
#realJSOP29-Mar-21 23:42
mve#realJSOP29-Mar-21 23:42 
GeneralRe: UI not updating Pin
Richard Deeming30-Mar-21 0:05
mveRichard Deeming30-Mar-21 0:05 
GeneralRe: UI not updating Pin
#realJSOP30-Mar-21 5:12
mve#realJSOP30-Mar-21 5:12 
GeneralRe: UI not updating Pin
#realJSOP30-Mar-21 12:14
mve#realJSOP30-Mar-21 12:14 
GeneralRe: UI not updating Pin
#realJSOP30-Mar-21 14:26
mve#realJSOP30-Mar-21 14:26 
QuestionImpossible? Get instance of MainWindow from extern WPF-application Pin
Mc_Topaz22-Mar-21 14:05
Mc_Topaz22-Mar-21 14:05 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.