Click here to Skip to main content
16,016,712 members
Home / Discussions / WPF
   

WPF

 
AnswerRe: ListBoxItem DataTemplate with HyperLink Problem Pin
Richard Deeming8-May-23 21:44
mveRichard Deeming8-May-23 21:44 
GeneralRe: ListBoxItem DataTemplate with HyperLink Problem Pin
Kevin Marois9-May-23 5:29
professionalKevin Marois9-May-23 5:29 
QuestionCustomControl Styling Question Pin
Kevin Marois4-May-23 17:22
professionalKevin Marois4-May-23 17:22 
AnswerRe: CustomControl Styling Question Pin
Pete O'Hanlon4-May-23 20:29
mvePete O'Hanlon4-May-23 20:29 
QuestionNavigationControl - Continued Pin
Kevin Marois2-May-23 14:49
professionalKevin Marois2-May-23 14:49 
AnswerRe: NavigationControl - Continued Pin
Richard Deeming2-May-23 22:19
mveRichard Deeming2-May-23 22:19 
GeneralRe: NavigationControl - Continued Pin
Kevin Marois3-May-23 5:21
professionalKevin Marois3-May-23 5:21 
GeneralRe: NavigationControl - Continued Pin
Kevin Marois3-May-23 15:10
professionalKevin Marois3-May-23 15:10 
OK, so I'm close to done with this, but there's still a related problem.

In the MainWindow's code behind I have
NavigationPaneInfos = new List<NavigationPaneModel>
{
    new NavigationPaneModel
    {
        Header = "Projects", 
        NavigationItemType = NavigationItemType.Project, 
        DataSource = Repository.GetNavigationItems,
        IsExpanded = true                        //<=== THIS TRIGGERS LOAD
    },

    new NavigationPaneModel
    {
        Header = "Inventory", 
        NavigationItemType = NavigationItemType.Inventory,
        DataSource = Repository.GetNavigationItems
    },

    new NavigationPaneModel
    {
        Header = "Companies" , 
        NavigationItemType = NavigationItemType.Company,
        DataSource = Repository.GetNavigationItems,
        IsExpanded = true                        //<=== THIS TRIGGERS LOAD
    },

    new NavigationPaneModel
    {
        Header = "Employees", 
        NavigationItemType = NavigationItemType.Employee,
        DataSource = Repository.GetNavigationItems
    }
};
Here's the Pane's NavigationModel DP
public static readonly DependencyProperty NavigationPaneModelProperty =
            DependencyProperty.Register("NavigationPaneModel",
            typeof(NavigationPaneModel),
            typeof(NavigationPane),
            new PropertyMetadata(null, new PropertyChangedCallback(OnNavigationPaneModelChanged)));

public NavigationPaneModel NavigationPaneModel
{
    get { return (NavigationPaneModel)GetValue(NavigationPaneModelProperty); }
    set { SetValue(NavigationPaneModelProperty, value); }
}
private static async void OnNavigationPaneModelChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
    var control = (NavigationPane)d;

    /***********************************************************
        * This code checks to see if the Model's IsExpanded is set to True, 
        * and if it is, sets the IsPaneExpanded DP accordingly, which triggers 
        * load. below
        * 
        * See the IsPaneExpanded DP below
        * 
        **********************************************************/
    if (control.NavigationPaneModel.IsExpanded)
    {
        control.IsPaneExpanded = true;
    }
}
The IsPaneExpanded DP
public static readonly DependencyProperty IsPaneExpandedProperty =
            DependencyProperty.Register("IsPaneExpanded",
            typeof(bool),
            typeof(NavigationPane),
            new PropertyMetadata(false, new PropertyChangedCallback(OnIsPaneExpandedChanged)));

public bool IsPaneExpanded
{
    get { return (bool)GetValue(IsPaneExpandedProperty); }
    set { SetValue(IsPaneExpandedProperty, value); }
}

private static async void OnIsPaneExpandedChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
    var control = (NavigationPane)d;

    // This is getting called, but...
    if (control.IsPaneExpanded)
    {

        /********************************************************
        * Put a breakpoint here and expanded the pane manually.  
        * NavigationPaneModel will be NULL 
        * 
        * When the it's expanded from OnNavigationPaneModelChanged the 
        * the NavigationPaneModel is NOT NULL.
        *
        * It seems to go null AFTER the control is up & running
        ********************************************************/
        if (control.NavigationPaneModel != null)
        {
            await control.Load();
        }
    }
}

In addition, even though IsPaneExpanded is getting set to True, the pane never expands. I'm not getting any binding errors, and you can see the code behind is getting called.
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
Ya can't fix stupid.

GeneralRe: NavigationControl - Continued Pin
Richard Deeming3-May-23 21:35
mveRichard Deeming3-May-23 21:35 
QuestionWPF 3D rendering Pin
Kenneth Haugland1-May-23 4:52
mvaKenneth Haugland1-May-23 4:52 
AnswerRe: WPF 3D rendering Pin
Gerry Schmitz2-May-23 6:14
mveGerry Schmitz2-May-23 6:14 
GeneralRe: WPF 3D rendering Pin
Kenneth Haugland2-May-23 9:59
mvaKenneth Haugland2-May-23 9:59 
AnswerRe: WPF 3D rendering Pin
RedDk2-May-23 8:03
RedDk2-May-23 8:03 
GeneralRe: WPF 3D rendering Pin
Kenneth Haugland2-May-23 10:01
mvaKenneth Haugland2-May-23 10:01 
QuestionExpander in ListBoxItem Width Problem Pin
Kevin Marois27-Apr-23 7:19
professionalKevin Marois27-Apr-23 7:19 
AnswerRe: Expander in ListBoxItem Width Problem Pin
Richard Deeming1-May-23 23:09
mveRichard Deeming1-May-23 23:09 
GeneralRe: Expander in ListBoxItem Width Problem Pin
Kevin Marois2-May-23 7:12
professionalKevin Marois2-May-23 7:12 
QuestionSpinning Indicator Control Error Pin
Kevin Marois26-Apr-23 14:32
professionalKevin Marois26-Apr-23 14:32 
AnswerRe: Spinning Indicator Control Error Pin
Gerry Schmitz27-Apr-23 7:01
mveGerry Schmitz27-Apr-23 7:01 
GeneralRe: Spinning Indicator Control Error Pin
Kevin Marois27-Apr-23 7:27
professionalKevin Marois27-Apr-23 7:27 
GeneralRe: Spinning Indicator Control Error Pin
Gerry Schmitz28-Apr-23 4:46
mveGerry Schmitz28-Apr-23 4:46 
GeneralRe: Spinning Indicator Control Error Pin
Kevin Marois28-Apr-23 7:24
professionalKevin Marois28-Apr-23 7:24 
QuestionFlat Button Style Problem Pin
Kevin Marois22-Apr-23 18:14
professionalKevin Marois22-Apr-23 18:14 
AnswerRe: Flat Button Style Problem Pin
Gerry Schmitz23-Apr-23 8:55
mveGerry Schmitz23-Apr-23 8:55 
GeneralRe: Flat Button Style Problem Pin
Kevin Marois23-Apr-23 9:15
professionalKevin Marois23-Apr-23 9:15 

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.