प्रौद्योगिकी साझेदारी

WPF Prism Framework समग्र आदेशों समग्र आदेश

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

उद्देश्यम्‌

यौगिक-आदेशः तया सह पञ्जीकृतान् बहु-आदेशान् प्रेरयितुं शक्नोति, एकस्मिन् समये च बहु-आदेशान् निष्पादयितुं शक्नोति । सर्वेषां रक्षणम् इत्यादीनि व्यापारिकआवश्यकता: प्राप्तुं शक्यन्ते।

पूरयतु

1. ICompositeCommands अन्तरफलकं CompositeCommands कार्यान्वयनवर्गं च रचयन्तु

Prism मध्ये प्रदत्तं CompositeCommand ऑब्जेक्ट् ICompositeCommands अन्तरफलके तथा ApplicationCommands कार्यान्वयनवर्गे लपेटयन्तु

 public interface IApplicationCommands
    {
        CompositeCommand SaveCommand { get; }
    }

    public class ApplicationCommands : IApplicationCommands
    {
        private CompositeCommand _saveCommand = new CompositeCommand();
        public CompositeCommand SaveCommand
        {
            get { return _saveCommand; }
        }
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

2. IOC मध्ये यौगिक आदेशान् पञ्जीकरणं कुर्वन्तु
App.xaml पृष्ठभूमिसङ्केते IOC पञ्जीकरणं कुर्वन्तु

 protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
   containerRegistry.RegisterSingleton<IApplicationCommands, ApplicationCommands>();
}
  • 1
  • 2
  • 3
  • 4

3. ViewModel मध्ये compound commands परिभाषयन्तु
ViewModel मध्ये एकं कम्पोजिट् आदेशं परिभाषयन्तु तथा च आदेशं View लेयर मध्ये बाइण्ड् कुर्वन्तु
ViewModel: 1।

  private IApplicationCommands _applicationCommands;
        public IApplicationCommands ApplicationCommands
        {
            get { return _applicationCommands; }
            set { SetProperty(ref _applicationCommands, value); }
        }

        public MainWindowViewModel(IApplicationCommands applicationCommands)
        {
            ApplicationCommands = applicationCommands;
        }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

दृश्यं:

 <Button Content="Save" Margin="10" Command="{Binding ApplicationCommands.SaveCommand}"/>
  • 1

4. अन्येषु बहुषु स्थानेषु Commands इत्यनेन सह compound आदेशं पञ्जीकरणं कुर्वन्तु।

 public TabViewModel(IApplicationCommands applicationCommands)
  {
    _applicationCommands = applicationCommands;

    UpdateCommand = new DelegateCommand(Update).ObservesCanExecute(() => CanUpdate);

    _applicationCommands.SaveCommand.RegisterCommand(UpdateCommand);
}
 
private void Update()
{
  UpdateText = $"Updated: {DateTime.Now}";
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

एवं प्रकारेण यदा ApplicationCommands.SaveCommand इति यौगिक आदेशः प्रवर्तते तदा सर्वे पञ्जीकृताः आदेशाः प्रवर्तन्ते ।