Click here to Skip to main content
12,398,000 members (45,655 online)

Silverlight / WPF

 
AnswerRe: WPF Tab Styling Question #2 Pin
Pete O'Hanlon1-Jan-13 9:48
protectorPete O'Hanlon1-Jan-13 9:48 
GeneralRe: WPF Tab Styling Question #2 Pin
Kevin Marois1-Jan-13 9:55
memberKevin Marois1-Jan-13 9:55 
GeneralRe: WPF Tab Styling Question #2 Pin
Pete O'Hanlon1-Jan-13 9:56
protectorPete O'Hanlon1-Jan-13 9:56 
GeneralRe: WPF Tab Styling Question #2 Pin
Kevin Marois1-Jan-13 10:06
memberKevin Marois1-Jan-13 10:06 
GeneralRe: WPF Tab Styling Question #2 Pin
Wayne Gaylard1-Jan-13 23:00
mentorWayne Gaylard1-Jan-13 23:00 
GeneralRe: WPF Tab Styling Question #2 Pin
Pete O'Hanlon1-Jan-13 23:08
protectorPete O'Hanlon1-Jan-13 23:08 
GeneralRe: WPF Tab Styling Question #2 Pin
Kevin Marois2-Jan-13 15:41
memberKevin Marois2-Jan-13 15:41 
GeneralRe: WPF Tab Styling Question #2 Pin
Pete O'Hanlon2-Jan-13 21:05
protectorPete O'Hanlon2-Jan-13 21:05 
GeneralRe: WPF Tab Styling Question #2 Pin
Kevin Marois2-Jan-13 21:40
memberKevin Marois2-Jan-13 21:40 
QuestionWPF TabItem Styling Question Pin
Kevin Marois30-Dec-12 11:16
memberKevin Marois30-Dec-12 11:16 
AnswerRe: WPF TabItem Styling Question Pin
Pete O'Hanlon30-Dec-12 11:40
protectorPete O'Hanlon30-Dec-12 11:40 
GeneralRe: WPF TabItem Styling Question Pin
Kevin Marois30-Dec-12 15:16
memberKevin Marois30-Dec-12 15:16 
QuestionList Item Fore & Back Colors Pin
Kevin Marois29-Dec-12 7:52
memberKevin Marois29-Dec-12 7:52 
QuestionMVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
Member 137073829-Dec-12 1:58
memberMember 137073829-Dec-12 1:58 
<pre lang="text">


1.How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically?
2. How to set its CommandParameter?

//----------------------------------
//MainWindowView.xaml
//----------------------------------

<Window x:Class="MVVM.Views.MainWindowView"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"           
            xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
            xmlns:vm="clr-namespace:MVVM.ViewModels"
            Title="MainView" Height="354" Width="520">
     
      <Window.DataContext>
            <vm:MainWindowViewModel/>
      </Window.DataContext>
     
      <Grid>
           
            <!--In this ListBox, the MenuItem command can not be called-->
            <ListBox Height="252" HorizontalAlignment="Left" Margin="12,51,0,0" Name="listBox1" VerticalAlignment="Top" Width="201"
                        ItemsSource="{Binding Path=TestItems}">
                 
                  <ListBox.ItemTemplate>
                       
                        <DataTemplate>
                              <TextBlock Text="{Binding}" Width="150">
                                    <TextBlock.ContextMenu>
                                          <ContextMenu>
                                                <MenuItem Header="Call Command1"   >
                                                      <i:Interaction.Triggers>
                                                            <i:EventTrigger EventName="Click">
                                                                  <i:InvokeCommandAction Command="{Binding Command1}" CommandParameter="???"/><!--here the Command1 not be called-->
                                                            </i:EventTrigger>                                                            <!--how to set command parameter to this ListBoxItem displaying text?-->
                                                      </i:Interaction.Triggers>
                                                </MenuItem>
                                          </ContextMenu>
                                    </TextBlock.ContextMenu>
                              </TextBlock>                                                           
                        </DataTemplate>
                  </ListBox.ItemTemplate>                 
            </ListBox>
           
            <!--In this ListBox, the menuitem command can be called,
            but the command parameter can not be set correctly-->
            <ListBox Height="252" HorizontalAlignment="Left" Margin="230,51,0,0" Name="listBox2" VerticalAlignment="Top" Width="229"
                           SelectedItem="{Binding SelectedText,Mode=OneWayToSource}">
                  <ListBoxItem>
                        <TextBlock Text="item1" Name="tb" />        
                        <ListBoxItem.ContextMenu>
                              <ContextMenu>
                                    <MenuItem Header="Call Comand1">
                                          <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Click">
                                                     
                                                      <!--this one can be called correctly,
                                                         but the command parameter can not be set correctly-->                                
                                                      <i:InvokeCommandAction Command="{Binding Command1}" CommandParameter="{Binding ElementName=tb,Path=Text}" />              
                                                </i:EventTrigger>
                                          </i:Interaction.Triggers>
                                    </MenuItem>
                              </ContextMenu>
                        </ListBoxItem.ContextMenu>                                         
                  </ListBoxItem>
                 
                  <ListBoxItem>
                        <TextBlock Text="item2"/>
                        <ListBoxItem.ContextMenu>
                              <ContextMenu>
                                    <MenuItem Header="Call Comand1">
                                          <i:Interaction.Triggers>
                                                <i:EventTrigger EventName="Click">
                                                      <i:InvokeCommandAction Command="{Binding Command1}" CommandParameter="" />
                                                </i:EventTrigger>
                                          </i:Interaction.Triggers>
                                    </MenuItem>
                              </ContextMenu>
                        </ListBoxItem.ContextMenu>
                  </ListBoxItem>
            </ListBox>
            <Label Content="This one can not work" Height="28" HorizontalAlignment="Left" Margin="12,25,0,0" Name="label1" VerticalAlignment="Top" />
            <Label Content="This one can work" Height="28" HorizontalAlignment="Left" Margin="230,25,0,0" Name="label2" VerticalAlignment="Top" />
            <Label Content="Test ListBox ContextMenu" Height="28" HorizontalAlignment="Left" Margin="12,0,0,0" Name="label3" VerticalAlignment="Top" />
      </Grid>
</Window>

//------------------
//MainWindowViewModel.cs
//---------------

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Input;
using System.Windows;
using System.Windows.Controls;
using MVVM.Command;

namespace MVVM.ViewModels
{
      public class MainWindowViewModel : ViewModelBase
      {
            public List<string> TestItems
            {
                  get
                  {
                        return new List<string>()
                        {
                              "Item1",
                              "Item2",
                              "Item3"
                        };
                  }
            }

            public ListBoxItem SelectedText
            {
                  get;
                  set;
            }
            public MainWindowViewModel()
            {
                 
            }

            private ICommand _command1;
            public ICommand Command1
            {
                  get
                  {
                        if(null==_command1)
                        {
                              _command1 = new DelegateCommand<string>((str) =>
                           {
                                 MessageBox.Show("Command1 with parameter:" + str+((TextBlock)SelectedText.Content).Text);
                           });
                        }
                        return _command1;
                  }
            }
            ICommand _command2;
            public ICommand Command2
            {
                  get
                  {
                        if (null == _command2)
                        {
                              _command2 = new DelegateCommand<Button>((button) =>
                              {
                                    if (null == button)
                                          return;
                                    Point p = Mouse.GetPosition(button);
                                    button.Content = string.Format("{0},{1}", p.X, p.Y);
                              });
                        }
                        return _command2;
                  }
            }

      }
}
   </pre>
AnswerRe: MVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
SledgeHammer0129-Dec-12 7:22
memberSledgeHammer0129-Dec-12 7:22 
GeneralRe: MVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
Member 137073829-Dec-12 15:44
memberMember 137073829-Dec-12 15:44 
GeneralRe: MVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
SledgeHammer0129-Dec-12 16:26
memberSledgeHammer0129-Dec-12 16:26 
GeneralRe: MVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
Member 137073829-Dec-12 17:00
memberMember 137073829-Dec-12 17:00 
GeneralRe: MVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
SledgeHammer0129-Dec-12 17:25
memberSledgeHammer0129-Dec-12 17:25 
GeneralRe: MVVM:How to bind the MenuItem Command of ListBoxItem ContextMenu dynamically? Pin
Member 137073829-Dec-12 19:02
memberMember 137073829-Dec-12 19:02 
Questionmm Pin
Aishwarya aishu28-Dec-12 0:44
memberAishwarya aishu28-Dec-12 0:44 
AnswerRe: mm Pin
Richard MacCutchan28-Dec-12 5:59
mvpRichard MacCutchan28-Dec-12 5:59 
Generalsiverlight Pin
Aishwarya aishu28-Dec-12 0:42
memberAishwarya aishu28-Dec-12 0:42 
GeneralRe: siverlight Pin
Richard MacCutchan28-Dec-12 5:57
mvpRichard MacCutchan28-Dec-12 5:57 
QuestionDataTrigger bind to a Property Pin
mbv80023-Dec-12 17:01
membermbv80023-Dec-12 17:01 
AnswerRe: DataTrigger bind to a Property Pin
Pete O'Hanlon23-Dec-12 19:17
protectorPete O'Hanlon23-Dec-12 19:17 
AnswerRe: DataTrigger bind to a Property Pin
Wayne Gaylard23-Dec-12 19:39
mentorWayne Gaylard23-Dec-12 19:39 
QuestionWPF Adorner Issues Pin
John Simmons / outlaw programmer17-Dec-12 10:52
mvpJohn Simmons / outlaw programmer17-Dec-12 10:52 
AnswerRe: WPF Adorner Issues Pin
SledgeHammer0118-Dec-12 4:49
memberSledgeHammer0118-Dec-12 4:49 
GeneralRe: WPF Adorner Issues Pin
John Simmons / outlaw programmer20-Dec-12 9:09
mvpJohn Simmons / outlaw programmer20-Dec-12 9:09 
GeneralRe: WPF Adorner Issues Pin
SledgeHammer0121-Dec-12 4:50
memberSledgeHammer0121-Dec-12 4:50 
QuestionSilverlight Dynamic indexed binding Pin
Member 934221816-Dec-12 18:02
memberMember 934221816-Dec-12 18:02 
QuestionThird Party Controls Pin
Kevin Marois11-Dec-12 7:22
memberKevin Marois11-Dec-12 7:22 
AnswerRe: Third Party Controls Pin
Mycroft Holmes11-Dec-12 12:06
memberMycroft Holmes11-Dec-12 12:06 
AnswerRe: Third Party Controls Pin
Pete O'Hanlon11-Dec-12 12:43
protectorPete O'Hanlon11-Dec-12 12:43 
GeneralRe: Third Party Controls Pin
Kevin Marois12-Dec-12 8:28
memberKevin Marois12-Dec-12 8:28 
GeneralRe: Third Party Controls Pin
Pete O'Hanlon12-Dec-12 8:29
protectorPete O'Hanlon12-Dec-12 8:29 
GeneralRe: Third Party Controls Pin
Kevin Marois12-Dec-12 8:30
memberKevin Marois12-Dec-12 8:30 
GeneralRe: Third Party Controls Pin
Mycroft Holmes12-Dec-12 12:02
memberMycroft Holmes12-Dec-12 12:02 
QuestionHow can I Bind a DataTemplate Slider definition to the Code behind? Pin
maycockt10-Dec-12 5:24
membermaycockt10-Dec-12 5:24 
AnswerRe: How can I Bind a DataTemplate Slider definition to the Code behind? Pin
Alisaunder10-Dec-12 13:52
memberAlisaunder10-Dec-12 13:52 
GeneralRe: How can I Bind a DataTemplate Slider definition to the Code behind? Pin
maycockt14-Dec-12 1:18
membermaycockt14-Dec-12 1:18 
QuestionHow does one define IOleServiceProvider in a C# WPF application? Pin
Xarzu10-Dec-12 3:54
memberXarzu10-Dec-12 3:54 
AnswerRe: How does one define IOleServiceProvider in a C# WPF application? Pin
Pete O'Hanlon10-Dec-12 4:08
protectorPete O'Hanlon10-Dec-12 4:08 
QuestionSetting icons based on Region/city name?! Pin
radkrish9-Dec-12 19:43
memberradkrish9-Dec-12 19:43 
AnswerRe: Setting icons based on Region/city name?! Pin
Abhinav S9-Dec-12 20:12
mvpAbhinav S9-Dec-12 20:12 
QuestionWPF ComboBox Selected Item Problem Pin
Kevin Marois8-Dec-12 10:48
memberKevin Marois8-Dec-12 10:48 
AnswerRe: WPF ComboBox Selected Item Problem Pin
Ninja__Turtle8-Dec-12 17:43
memberNinja__Turtle8-Dec-12 17:43 
AnswerRe: WPF ComboBox Selected Item Problem Pin
Wayne Gaylard8-Dec-12 18:24
mentorWayne Gaylard8-Dec-12 18:24 
GeneralRe: WPF ComboBox Selected Item Problem Pin
Kevin Marois8-Dec-12 19:37
memberKevin Marois8-Dec-12 19:37 

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.


Advertise | Privacy | Mobile
Web01 | 2.8.160721.1 | Last Updated 24 Jul 2016
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service
Layout: fixed | fluid