Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic Save function bind with icon button on toolbar (Read 1764 times)
kelum
Full Member
***
Offline


I Love MindFusion!

Posts: 100
Joined: Mar 25th, 2017
Save function bind with icon button on toolbar
Apr 4th, 2017 at 5:18am
Print Post  
I have created following button on XML file

Code
Select All
                <StackPanel Orientation="Vertical" Margin="0,2,0,2">
                    <Button Margin="1" Padding="2" HorizontalContentAlignment="Left"
                            Style="{StaticResource ToolBarButtonBaseStyle}"
                            Command="{x:Static ApplicationCommands.Save}"
                            CommandTarget="{Binding ElementName=MyDesigner}">
                        <Button.Content>
                            <Grid>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition/>
                                    <ColumnDefinition />
                                </Grid.ColumnDefinitions>
                                <Image Source="/Layout/Images/Save.png" Width="16"/>
                                <TextBlock Margin="3,0,3,0" Text="Save" VerticalAlignment="Center" Grid.Column="1"/>
                            </Grid>
                        </Button.Content>
                    </Button> 



I'm trying to bind following save method to above button

Code
Select All
                private void OnSaveClick(object sender, RoutedEventArgs e)
        {
            Microsoft.Win32.SaveFileDialog saveDlg = new Microsoft.Win32.SaveFileDialog();
            if (saveDlg.ShowDialog() == true)
                flowchart.SaveToXml(saveDlg.FileName);
        }
 



how can I do that ?
  
Back to top
 
IP Logged
 
Slavcho
YaBB Moderator
*****
Offline


tech.support

Posts: 3447
Joined: Oct 19th, 2005
Re: Save function bind with icon button on toolbar
Reply #1 - Apr 4th, 2017 at 10:47am
Print Post  
Try this -

Code
Select All
public MainWindow()
{
   InitializeComponent();

   CommandBindings.Add(
      new CommandBinding(ApplicationCommands.Save, Save_Executed, Save_CanExecute));
}

public void Save_Executed(object sender, ExecutedRoutedEventArgs e)
{
   Microsoft.Win32.SaveFileDialog saveDlg = new Microsoft.Win32.SaveFileDialog();
   if (saveDlg.ShowDialog() == true)
      diagram.SaveToXml(saveDlg.FileName);
}

public void Save_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
   e.CanExecute = diagram.Dirty;
} 

  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint