Merge pull request #330 from telerik/hhristov/data-form-update

RadDataForm EntityProvider is now initialized immediately
This commit is contained in:
Atanas Popatanasov 2018-10-19 12:26:17 +03:00 коммит произвёл GitHub
Родитель b50ab2f2a4 81429e2c38
Коммит 5feceb7210
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
18 изменённых файлов: 2295 добавлений и 2179 удалений

Просмотреть файл

@ -1,421 +1,422 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup> <PropertyGroup>
<PlatformFolder>$(Platform)</PlatformFolder> <PlatformFolder>$(Platform)</PlatformFolder>
<OutputPath>bin\$(PlatformFolder)\$(Configuration)\</OutputPath> <OutputPath>bin\$(PlatformFolder)\$(Configuration)\</OutputPath>
<SccProjectName>SAK</SccProjectName> <SccProjectName>SAK</SccProjectName>
<SccLocalPath>SAK</SccLocalPath> <SccLocalPath>SAK</SccLocalPath>
<SccAuxPath>SAK</SccAuxPath> <SccAuxPath>SAK</SccAuxPath>
<SccProvider>SAK</SccProvider> <SccProvider>SAK</SccProvider>
</PropertyGroup> </PropertyGroup>
<PropertyGroup> <PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{02174A60-4907-449E-818C-A25A39C0B3DC}</ProjectGuid> <ProjectGuid>{02174A60-4907-449E-818C-A25A39C0B3DC}</ProjectGuid>
<OutputType>Library</OutputType> <OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder> <AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Telerik.UI.Xaml.Controls.Data</RootNamespace> <RootNamespace>Telerik.UI.Xaml.Controls.Data</RootNamespace>
<AssemblyName>Telerik.UI.Xaml.Controls.Data.UWP</AssemblyName> <AssemblyName>Telerik.UI.Xaml.Controls.Data.UWP</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage> <DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier> <TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion>10.0.10586.0</TargetPlatformVersion> <TargetPlatformVersion>10.0.10586.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.10586.0</TargetPlatformMinVersion> <TargetPlatformMinVersion>10.0.10586.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion> <MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids> <ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile> <EnableDotNetNativeCompatibleProfile>true</EnableDotNetNativeCompatibleProfile>
<GenerateLibraryLayout>true</GenerateLibraryLayout> <GenerateLibraryLayout>true</GenerateLibraryLayout>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols> <DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType> <DebugType>full</DebugType>
<Optimize>false</Optimize> <Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath> <OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants> <DefineConstants>DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget> <PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType> <DebugType>pdbonly</DebugType>
<Optimize>true</Optimize> <Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath> <OutputPath>bin\Release\</OutputPath>
<DocumentationFile>$(OutputPath)\Telerik.UI.Xaml.Controls.Data.XML</DocumentationFile> <DocumentationFile>$(OutputPath)\Telerik.UI.Xaml.Controls.Data.XML</DocumentationFile>
<DefineConstants>TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants> <DefineConstants>TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<ErrorReport>prompt</ErrorReport> <ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
<StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings> <StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
<RunCodeAnalysis>true</RunCodeAnalysis> <RunCodeAnalysis>true</RunCodeAnalysis>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<None Include="project.json" /> <None Include="project.json" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<Compile Include="Common\ContainerGeneration\HexItemModelGenerator.cs" /> <Compile Include="Common\ContainerGeneration\HexItemModelGenerator.cs" />
<Compile Include="DataForm\View\Editors\DataFormComboBoxItem.cs" /> <Compile Include="DataForm\View\Editors\DataFormComboBoxItem.cs" />
<Compile Include="DataForm\View\Editors\SegmentedControlCustomEditor.cs" /> <Compile Include="DataForm\View\Editors\IEditor.cs" />
<Compile Include="DataForm\View\Editors\SliderCustomEditor.cs" /> <Compile Include="DataForm\View\Editors\SegmentedControlCustomEditor.cs" />
<Compile Include="ListView\Data\ListViewDataView.cs" /> <Compile Include="DataForm\View\Editors\SliderCustomEditor.cs" />
<Compile Include="ListView\View\Controls\ListViewLoadDataUICommand.cs" /> <Compile Include="ListView\Data\ListViewDataView.cs" />
<Compile Include="ListView\View\RadListView.Data.cs" /> <Compile Include="ListView\View\Controls\ListViewLoadDataUICommand.cs" />
<Compile Include="ListView\View\Services\Commands\GroupHeaderTapCommand.cs" /> <Compile Include="ListView\View\RadListView.Data.cs" />
<Compile Include="ListView\View\Services\Commands\ItemHoldCommand.cs" /> <Compile Include="ListView\View\Services\Commands\GroupHeaderTapCommand.cs" />
<Compile Include="ListView\View\Services\Commands\ItemHoldContext.cs" /> <Compile Include="ListView\View\Services\Commands\ItemHoldCommand.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="ListView\View\Services\Commands\ItemHoldContext.cs" />
<Compile Include="DataBoundListBox\AutomationPeers\RadDataBoundListBoxAutomationPeer.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="DataBoundListBox\AutomationPeers\RadDataBoundListBoxItemAutomationPeer.cs" /> <Compile Include="DataBoundListBox\AutomationPeers\RadDataBoundListBoxAutomationPeer.cs" />
<Compile Include="DataForm\AutomationPeers\RadDataFormAutomationPeer.cs" /> <Compile Include="DataBoundListBox\AutomationPeers\RadDataBoundListBoxItemAutomationPeer.cs" />
<Compile Include="HexView\AutomationPeers\RadHexViewAutomationPeer.cs" /> <Compile Include="DataForm\AutomationPeers\RadDataFormAutomationPeer.cs" />
<Compile Include="ListView\AutomationPeers\RadListViewAutomationPeer.cs" /> <Compile Include="HexView\AutomationPeers\RadHexViewAutomationPeer.cs" />
<Compile Include="ListView\AutomationPeers\RadListViewItemAutomationPeer.cs" /> <Compile Include="ListView\AutomationPeers\RadListViewAutomationPeer.cs" />
<Compile Include="VirtualizingDataControl\RenderInfo\StaggeredRenderInfo.cs" /> <Compile Include="ListView\AutomationPeers\RadListViewItemAutomationPeer.cs" />
</ItemGroup> <Compile Include="VirtualizingDataControl\RenderInfo\StaggeredRenderInfo.cs" />
<ItemGroup> </ItemGroup>
<Page Include="Themes\DataForm.xaml"> <ItemGroup>
<Generator>MSBuild:Compile</Generator> <Page Include="Themes\DataForm.xaml">
<SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator>
</Page> <SubType>Designer</SubType>
<Page Include="Themes\Generic.xaml"> </Page>
<Generator>MSBuild:Compile</Generator> <Page Include="Themes\Generic.xaml">
<SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator>
</Page> <SubType>Designer</SubType>
<Page Include="Themes\Listbox.xaml"> </Page>
<Generator>MSBuild:Compile</Generator> <Page Include="Themes\Listbox.xaml">
<SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator>
</Page> <SubType>Designer</SubType>
<Page Include="Themes\ThemeResourcesDark.xaml"> </Page>
<Generator>MSBuild:Compile</Generator> <Page Include="Themes\ThemeResourcesDark.xaml">
<SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator>
</Page> <SubType>Designer</SubType>
<Page Include="Themes\ThemeResourcesHighContrast.xaml"> </Page>
<Generator>MSBuild:Compile</Generator> <Page Include="Themes\ThemeResourcesHighContrast.xaml">
<SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator>
</Page> <SubType>Designer</SubType>
<Page Include="Themes\ThemeResourcesLight.xaml"> </Page>
<Generator>MSBuild:Compile</Generator> <Page Include="Themes\ThemeResourcesLight.xaml">
<SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator>
</Page> <SubType>Designer</SubType>
</ItemGroup> </Page>
<ItemGroup> </ItemGroup>
<ProjectReference Include="..\..\Core.UWP\Core.UWP.csproj"> <ItemGroup>
<Project>{1652093c-b541-48c9-bcb6-bbe7ce7c7ffe}</Project> <ProjectReference Include="..\..\Core.UWP\Core.UWP.csproj">
<Name>Core.UWP</Name> <Project>{1652093c-b541-48c9-bcb6-bbe7ce7c7ffe}</Project>
</ProjectReference> <Name>Core.UWP</Name>
<ProjectReference Include="..\..\Data.UWP\Data.UWP.csproj"> </ProjectReference>
<Project>{453edd2c-5b29-4d4e-b4da-578d0bdca06f}</Project> <ProjectReference Include="..\..\Data.UWP\Data.UWP.csproj">
<Name>Data.UWP</Name> <Project>{453edd2c-5b29-4d4e-b4da-578d0bdca06f}</Project>
</ProjectReference> <Name>Data.UWP</Name>
<ProjectReference Include="..\..\Input\Input.UWP\Input.UWP.csproj"> </ProjectReference>
<Project>{5db497cd-b469-42a8-ae39-41b8465710a6}</Project> <ProjectReference Include="..\..\Input\Input.UWP\Input.UWP.csproj">
<Name>Input.UWP</Name> <Project>{5db497cd-b469-42a8-ae39-41b8465710a6}</Project>
</ProjectReference> <Name>Input.UWP</Name>
<ProjectReference Include="..\..\Primitives\Primitives.UWP\Primitives.UWP.csproj"> </ProjectReference>
<Project>{bf14f352-f1b9-4cde-854b-0339259a4cfd}</Project> <ProjectReference Include="..\..\Primitives\Primitives.UWP\Primitives.UWP.csproj">
<Name>Primitives.UWP</Name> <Project>{bf14f352-f1b9-4cde-854b-0339259a4cfd}</Project>
</ProjectReference> <Name>Primitives.UWP</Name>
</ItemGroup> </ProjectReference>
<PropertyGroup Label="Configuration"> </ItemGroup>
<Import_RootNamespace>Telerik.UI.Xaml.Controls.Data</Import_RootNamespace> <PropertyGroup Label="Configuration">
</PropertyGroup> <Import_RootNamespace>Telerik.UI.Xaml.Controls.Data</Import_RootNamespace>
<ItemGroup> </PropertyGroup>
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\GeneratedItemModel.cs" /> <ItemGroup>
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IAnimated.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\GeneratedItemModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IArrangeChild.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IAnimated.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IGeneratedContainer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IArrangeChild.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\ItemGeneratorBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IGeneratedContainer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\ItemModelGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\ItemGeneratorBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IUIContainerGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\ItemModelGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\Controls\DataControlBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\ContainerGeneration\IUIContainerGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\Controls\TemplateProviderControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\Controls\DataControlBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\DataCurrencyService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\Controls\TemplateProviderControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\DelegateUpdate.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\DataCurrencyService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\Enums\EmptyContentDisplayMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\DelegateUpdate.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\Enums\HeaderFooterDisplayMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\Enums\EmptyContentDisplayMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\IListSourceProvider.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\Enums\HeaderFooterDisplayMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\IPullToRefreshListener.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\IListSourceProvider.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\OffsetToAngleConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\IPullToRefreshListener.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\OffsetToOpacityConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\OffsetToAngleConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\PullToRefreshGestureRecognizer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\OffsetToOpacityConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\SwipeEaseFunction.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\PullToRefreshGestureRecognizer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\CheckedItemsCollection.cs" /> <Compile Include="$(MSBuildThisFileDirectory)Common\PullToRefresh\SwipeEaseFunction.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\CheckedItemsCollectionOperation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\CheckedItemsCollection.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\IsCheckModeActiveChangedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\CheckedItemsCollectionOperation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\IsCheckModeActiveChangingEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\IsCheckModeActiveChangedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\ItemCheckBox.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\IsCheckModeActiveChangingEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\ItemCheckedStateChangedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\ItemCheckBox.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\ItemCheckedStateChangingEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\ItemCheckedStateChangedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\RadDataBoundListBox.CheckBoxes.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\ItemCheckedStateChangingEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\RadDataBoundListBox.CheckBoxes.WP.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\RadDataBoundListBox.CheckBoxes.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\Controls\PullToRefreshIndicatorControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\CheckBoxesSupport\RadDataBoundListBox.CheckBoxes.WP.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\DataBoundListBoxListSourceItemFactory.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\Controls\PullToRefreshIndicatorControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\IncrementalLoadingIndicatorItem.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\DataBoundListBoxListSourceItemFactory.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ItemReorderSupport\ItemReorderControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\IncrementalLoadingIndicatorItem.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ItemReorderSupport\ItemReorderStateChangedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ItemReorderSupport\ItemReorderControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ItemReorderSupport\RadDataBoundListBox.ItemReorder.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ItemReorderSupport\ItemReorderStateChangedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ListBoxItemTapEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ItemReorderSupport\RadDataBoundListBox.ItemReorder.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ListFooterIndicatorItem.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ListBoxItemTapEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ListHeaderIndicatorItem.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ListFooterIndicatorItem.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBox.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\ListHeaderIndicatorItem.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBox.PullToRefresh.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBox.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBoxItem.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBox.PullToRefresh.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBoxItem.WP.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBoxItem.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\SelectionChangingEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\RadDataBoundListBoxItem.WP.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataControlsLocalizationManager.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataBoundListBox\SelectionChangingEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\DataFormModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataControlsLocalizationManager.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\IDataFormView.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\DataFormModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\CommitMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\IDataFormView.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\ValidationMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\CommitMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\CommandId.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Model\ValidationMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\CommandService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\CommandId.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\CommitCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\CommandService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\DataFormCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\CommitCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\ITransactionService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\DataFormCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\Layout\DataFormLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\ITransactionService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\Layout\StackDataFormLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\Layout\DataFormLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\TransactionService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\Layout\StackDataFormLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\ValidateCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\TransactionService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\EditorIconVisibilityConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\Services\ValidateCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\EnumToItemsSourceConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\EditorIconVisibilityConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\EnumToIndexConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\EnumToItemsSourceConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\IsEnabledEditorConvetrer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\EnumToIndexConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\EditorFactory.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Converters\IsEnabledEditorConvetrer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\AutoCompleteEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\EditorFactory.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\BooleanEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\AutoCompleteEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormAutoCompleteTextBox.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\BooleanEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormDateTimePickerButton.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormAutoCompleteTextBox.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormNumericTextBox.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormDateTimePickerButton.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormTextBox.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormNumericTextBox.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\ITypeEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\DataFormTextBox.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\CustomEditors\CustomEditorBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\Controls\ITypeEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\CustomEditors\ToggleSwitchCustomEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\CustomEditors\CustomEditorBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\DateEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\CustomEditors\ToggleSwitchCustomEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EditorGeneration\EntityEditorGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\DateEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EditorGeneration\IEntityPropertyEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EditorGeneration\EntityEditorGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EditorIconDisplayMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EditorGeneration\IEntityPropertyEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EntityPropertyControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EditorIconDisplayMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EnumEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EntityPropertyControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\ErrorsControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\EnumEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\LabelControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\ErrorsControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\ListEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\LabelControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\NumericEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\ListEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\PositiveMessageControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\NumericEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\TimeEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\PositiveMessageControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\StringEditor.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\TimeEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)DataForm\View\RadDataForm.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\Editors\StringEditor.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\ContainerGeneration\HexViewItemUIContainerGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DataForm\View\RadDataForm.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\HexPanel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\ContainerGeneration\HexViewItemUIContainerGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\HexViewItemTapEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\HexPanel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\ImageConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\HexViewItemTapEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\AngledHexLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\ImageConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\FlatLooseHexLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\AngledHexLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\FlatTightHexLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\FlatLooseHexLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\HexLayoutDefinitionBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\FlatTightHexLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\AngledHexLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Definitions\HexLayoutDefinitionBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\FlatLooseHexLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\AngledHexLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\FlatTightHexLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\FlatLooseHexLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\HexLayoutStrategyBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\FlatTightHexLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)HexView\RadHexView.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\Layout\Strategies\HexLayoutStrategyBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\AddRemoveLayoutResult.cs" /> <Compile Include="$(MSBuildThisFileDirectory)HexView\RadHexView.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\BaseLayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\AddRemoveLayoutResult.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\CompactLayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\BaseLayout.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\ExpandCollapseEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\CompactLayout.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\GroupInfo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\ExpandCollapseEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\ItemInfo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\GroupInfo.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\LayoutDoubleUtil.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\ItemInfo.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\LayoutInfo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\LayoutDoubleUtil.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\LayoutRenderInfoState.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\LayoutInfo.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\OutlineLayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\LayoutRenderInfoState.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\GeneratedLengthContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\OutlineLayout.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IGenerateLayoutLength.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\GeneratedLengthContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IndexStorage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IGenerateLayoutLength.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IRenderInfo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IndexStorage.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IRenderInfoState.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IRenderInfo.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\StackedGeneratedLengthContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\IRenderInfoState.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\StaggeredRenderInfo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\StackedGeneratedLengthContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\StackedCompactLayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\RenderInfo\StaggeredRenderInfo.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\StaggeredLayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\StackedCompactLayout.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\IncrementalLoadingStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\StaggeredLayout.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\ItemsLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\IncrementalLoadingStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\LayoutStrategyBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\ItemsLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\LayoutStrategyComparer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\LayoutStrategyBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\PlaceholderStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\LayoutStrategyComparer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\SlotStrategyExecutionOrders.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\PlaceholderStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\StackedItemsLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\SlotStrategyExecutionOrders.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\StaggeredItemsLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\StackedItemsLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\StaggeredLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\StaggeredItemsLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\TabularGroupInfo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\Strategies\StaggeredLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\WrapLayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\TabularGroupInfo.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\BaseLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Layout\WrapLayout.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\EmptyContentGeneratedModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\BaseLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\FooterGeneratedModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\EmptyContentGeneratedModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\HeaderGeneratedModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\FooterGeneratedModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\ItemGenerationContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\HeaderGeneratedModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\GridLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ContainerGeneration\ItemGenerationContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\IListView.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\GridLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\IOrientedParentView.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\IListView.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ISupportItemAnimation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\IOrientedParentView.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\LayoutController.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ISupportItemAnimation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\LayoutController.HeaderFooter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\LayoutController.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\LayoutController.ItemAnimation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\LayoutController.HeaderFooter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ListViewModel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\LayoutController.ItemAnimation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\StackLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ListViewModel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\UpdateFlags.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\StackLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\WrapLayoutStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\UpdateFlags.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\CheckBoxPosition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\WrapLayoutStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\FrozenGroupsPanel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\CheckBoxPosition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ItemCheckBoxControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\FrozenGroupsPanel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewEmptyContentControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ItemCheckBoxControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\RadListViewItem.IDragDropElement.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewEmptyContentControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToRotateDegreesConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\RadListViewItem.IDragDropElement.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\CheckBoxListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToRotateDegreesConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\GridLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\CheckBoxListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\StaggeredLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\GridLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\ListViewGroupHeaderDisplayMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\StaggeredLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\ListViewItemSwipeDirection.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\ListViewGroupHeaderDisplayMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.ItemCheckBox.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\ListViewItemSwipeDirection.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ChildrenListViewPanel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.ItemCheckBox.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ChildrenListViewPanel.DragDrop.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ChildrenListViewPanel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\GroupHeaderContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ChildrenListViewPanel.DragDrop.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewAutoDataLoadingControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\GroupHeaderContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewCurrencyControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewAutoDataLoadingControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewGroupHeader.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewCurrencyControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewLoadDataControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewGroupHeader.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewLoadDataControlBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewLoadDataControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewRootPanel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewLoadDataControlBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\PullToRefreshIndicator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewRootPanel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\RadListViewItem.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\PullToRefreshIndicator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewItemUIContainerGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\RadListViewItem.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewPanel.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewItemUIContainerGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\RadListViewItem.Reorder.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\ListViewPanel.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToSizeConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Controls\RadListViewItem.Reorder.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToVerticalAlignmentConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToSizeConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToHorizontalAlignmentConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToVerticalAlignmentConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Currency.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToHorizontalAlignmentConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\CurrencyListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Currency.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\EmptyContentListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\CurrencyListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\HeaderFooterListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\EmptyContentListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\ListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\HeaderFooterListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\OverlayAdornerListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\ListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\ScrollableAdornerListViewLayer.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\OverlayAdornerListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\PullToRefreshScrollMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Layers\ScrollableAdornerListViewLayer.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.ItemAnimation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\PullToRefreshScrollMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToScrollModeConverter.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.ItemAnimation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\LayoutDefinitionBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Converters\OrientationToScrollModeConverter.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\ListViewBusyOverlayControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\LayoutDefinitionBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\StackLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\ListViewBusyOverlayControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\WrapLayoutDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\StackLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\LayoutDefinitions\WrapLayoutDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Manipulation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.PullToRefreshService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Manipulation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Reorder.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.PullToRefreshService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Selection.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Reorder.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.SwipeAction.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.Selection.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Reorder\ListViewReorderMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\RadListView.SwipeAction.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Reorder\ReorderListViewItemHitTestStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Reorder\ListViewReorderMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Reorder\ReorderOperation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Reorder\ReorderListViewItemHitTestStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\AnimationType.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Reorder\ReorderOperation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\CheckBoxContainerGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\AnimationType.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\CheckBoxGenerator.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\CheckBoxContainerGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\CheckModeActiveChangedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\CheckBoxGenerator.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\IItemCheckBoxService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\CheckModeActiveChangedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\ListViewItemCheckBoxService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\IItemCheckBoxService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\CommandId.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\CheckBoxSelection\ListViewItemCheckBoxService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\CommandService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\CommandId.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\DragAction.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\CommandService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemActionTapCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\DragAction.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemActionTapContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemActionTapCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemReorderCompleteCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemActionTapContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemReorderCompleteContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemReorderCompleteCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemDragStartingCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemReorderCompleteContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemDragStartingContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemDragStartingCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipeContextBase.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemDragStartingContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipingContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipeContextBase.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipingCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipingContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipeActionCompleteCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipingCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipeActionCompleteContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipeActionCompleteCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemTapCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemSwipeActionCompleteContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemTapContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemTapCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ListViewCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ItemTapContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ListViewUserCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ListViewCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\LoadMoreDataCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\ListViewUserCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\LoadMoreDataContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\LoadMoreDataCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\RefreshRequestedCommand.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\LoadMoreDataContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\DragDrop\ListViewDragBehavior.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Commands\RefreshRequestedCommand.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\DragDrop\ListViewItemHittestStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\DragDrop\ListViewDragBehavior.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewAnimationService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\DragDrop\ListViewItemHittestStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewCurrencyService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewAnimationService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewUpdateService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewCurrencyService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewVisualStateService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewUpdateService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\ListViewSelectionChangedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\ListViewVisualStateService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\ListViewSelectionMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\ListViewSelectionChangedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\ListViewSelectionService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\ListViewSelectionMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\SelectedItemCollection.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\ListViewSelectionService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\BringIntoViewOperation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)ListView\View\Services\Selection\SelectedItemCollection.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\AsyncBalanceMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\BringIntoViewOperation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\BalanceOperationType.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\AsyncBalanceMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\ItemAnimationMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\BalanceOperationType.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\ItemState.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\ItemAnimationMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Events\ItemAnimationEndedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Enumerations\ItemState.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Events\ItemStateChangedEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Events\ItemAnimationEndedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Events\UpdateDataItemEventArgs.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Events\ItemStateChangedEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\RadVirtualizingDataControl.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\Events\UpdateDataItemEventArgs.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\RadVirtualizingDataControl.ItemAnimation.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\RadVirtualizingDataControl.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\RadVirtualizingDataControlItem.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\RadVirtualizingDataControl.ItemAnimation.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\ScrollOffsetContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\RadVirtualizingDataControlItem.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\ScrollUpdateService.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\ScrollOffsetContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\SingleItemAnimationContext.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\ScrollUpdateService.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VirtualizingDataControl.Scrolling.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\SingleItemAnimationContext.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VirtualizingDataControl.UIVirtualization.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VirtualizingDataControl.Scrolling.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VirtualizingDataControlCollection.Updates.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VirtualizingDataControl.UIVirtualization.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\CollectionChangeItemReorderMode.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VirtualizingDataControlCollection.Updates.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\DynamicGridVirtualizationStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\CollectionChangeItemReorderMode.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\DynamicGridVirtualizationStrategyDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\DynamicGridVirtualizationStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\StackVirtualizationStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\DynamicGridVirtualizationStrategyDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\StackVirtualizationStrategyDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\StackVirtualizationStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\VirtualizationStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\StackVirtualizationStrategyDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\VirtualizationStrategyDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\VirtualizationStrategy.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\WrapLineAlignment.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\VirtualizationStrategyDefinition.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\WrapVirtualizationStrategy.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\WrapLineAlignment.cs" />
<Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\WrapVirtualizationStrategyDefinition.cs" /> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\WrapVirtualizationStrategy.cs" />
</ItemGroup> <Compile Include="$(MSBuildThisFileDirectory)VirtualizingDataControl\VStrategies\WrapVirtualizationStrategyDefinition.cs" />
<ItemGroup> </ItemGroup>
<Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ListViewModel.Data.cs" /> <ItemGroup>
</ItemGroup> <Compile Include="$(MSBuildThisFileDirectory)ListView\Model\ListViewModel.Data.cs" />
<ItemGroup> </ItemGroup>
<PRIResource Include="$(MSBuildThisFileDirectory)Resources\Neutral.resw" /> <ItemGroup>
</ItemGroup> <PRIResource Include="$(MSBuildThisFileDirectory)Resources\Neutral.resw" />
<ItemGroup> </ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadDataBoundListBox.Icon.png" /> <ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadDataForm.Icon.png" /> <EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadDataBoundListBox.Icon.png" />
<EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadListView.Icon.png" /> <EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadDataForm.Icon.png" />
</ItemGroup> <EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadListView.Icon.png" />
<ItemGroup> </ItemGroup>
<EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadHexView.Icon.png" /> <ItemGroup>
</ItemGroup> <EmbeddedResource Include="$(MSBuildThisFileDirectory)ToolboxIcons\Telerik.UI.Xaml.Controls.Data.RadHexView.Icon.png" />
<ItemGroup> </ItemGroup>
<Content Include="$(MSBuildThisFileDirectory)ListView\Resources\reorder-handle-dark.png"> <ItemGroup>
<CopyToOutputDirectory>Never</CopyToOutputDirectory> <Content Include="$(MSBuildThisFileDirectory)ListView\Resources\reorder-handle-dark.png">
</Content> <CopyToOutputDirectory>Never</CopyToOutputDirectory>
<Content Include="$(MSBuildThisFileDirectory)ListView\Resources\reorder-handle-light.png"> </Content>
<CopyToOutputDirectory>Never</CopyToOutputDirectory> <Content Include="$(MSBuildThisFileDirectory)ListView\Resources\reorder-handle-light.png">
</Content> <CopyToOutputDirectory>Never</CopyToOutputDirectory>
</ItemGroup> </Content>
<PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '14.0' "> </ItemGroup>
<VisualStudioVersion>14.0</VisualStudioVersion> <PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '14.0' ">
</PropertyGroup> <VisualStudioVersion>14.0</VisualStudioVersion>
<PropertyGroup> </PropertyGroup>
<SignAssembly>true</SignAssembly> <PropertyGroup>
<AssemblyOriginatorKeyFile>..\..\..\BuildTools\Win8PublicKey.snk</AssemblyOriginatorKeyFile> <SignAssembly>true</SignAssembly>
</PropertyGroup> <AssemblyOriginatorKeyFile>..\..\..\BuildTools\Win8PublicKey.snk</AssemblyOriginatorKeyFile>
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" /> </PropertyGroup>
<Import Project="..\..\..\BuildTools\CopyBinaries.targets" /> <Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" />
<Target Name="XamlGeneratedCodeWarningRemoved" AfterTargets="MarkupCompilePass2"> <Import Project="..\..\..\BuildTools\CopyBinaries.targets" />
<Exec Command="for %%f in (@(_GeneratedCodeFiles)) do echo #pragma warning disable 1591 &gt; %%f.temp" /> <Target Name="XamlGeneratedCodeWarningRemoved" AfterTargets="MarkupCompilePass2">
<Exec Command="for %%f in (@(_GeneratedCodeFiles)) do type %%f &gt;&gt; %%f.temp" /> <Exec Command="for %%f in (@(_GeneratedCodeFiles)) do echo #pragma warning disable 1591 &gt; %%f.temp" />
<Exec Command="for %%f in (@(_GeneratedCodeFiles)) do echo #pragma warning restore 1591 &gt;&gt; %%f.temp" /> <Exec Command="for %%f in (@(_GeneratedCodeFiles)) do type %%f &gt;&gt; %%f.temp" />
<Exec Command="for %%f in (@(_GeneratedCodeFiles)) do move /y %%f.temp %%f" /> <Exec Command="for %%f in (@(_GeneratedCodeFiles)) do echo #pragma warning restore 1591 &gt;&gt; %%f.temp" />
<Message Text="Xaml Generated Code Warnings Removed: @(_GeneratedCodeFiles)" /> <Exec Command="for %%f in (@(_GeneratedCodeFiles)) do move /y %%f.temp %%f" />
</Target> <Message Text="Xaml Generated Code Warnings Removed: @(_GeneratedCodeFiles)" />
</Target>
</Project> </Project>

Просмотреть файл

@ -1,177 +1,194 @@
using System.Linq; using System;
using Telerik.Data.Core; using System.Collections.Generic;
using Telerik.UI.Xaml.Controls.Data.DataForm; using System.Linq;
using Telerik.UI.Xaml.Controls.Data.DataForm.View; using Telerik.Data.Core;
using Telerik.UI.Xaml.Controls.Data.DataForm;
namespace Telerik.UI.Xaml.Controls.Data using Telerik.UI.Xaml.Controls.Data.DataForm.View;
{
internal partial class DataFormModel namespace Telerik.UI.Xaml.Controls.Data
{ {
private Entity entity; internal partial class DataFormModel
{
private EntityEditorGenerator containerGenerator; private Entity entity;
private EntityEditorGenerator containerGenerator;
internal DataFormModel(IDataFormView view) private Dictionary<EntityProperty, EntityPropertyControl> propertyToEditor = new Dictionary<EntityProperty, EntityPropertyControl>();
{
this.View = view; internal DataFormModel(IDataFormView view)
this.containerGenerator = new EntityEditorGenerator(view); {
} this.View = view;
this.containerGenerator = new EntityEditorGenerator(view);
internal IDataFormView View { get; set; } }
internal EntityProvider entityProvider { get; set; }
internal IDataFormView View { get; set; }
internal EditorFactory EditorFactory internal EntityProvider entityProvider { get; set; }
{
get internal EditorFactory EditorFactory
{ {
return this.containerGenerator.EditorFactory; get
} {
} return this.containerGenerator.EditorFactory;
}
internal ITransactionService TransactionService }
{
get internal ITransactionService TransactionService
{ {
return this.View.TransactionService; get
} {
} return this.View.TransactionService;
}
internal Entity Entity }
{
get internal Entity Entity
{ {
return this.entity; get
} {
set return this.entity;
{ }
this.OnEntityChanged(value, this.entity); set
this.entity = value; {
} this.OnEntityChanged(value, this.entity);
} this.entity = value;
}
internal void OnEditorFactoryChanged(EditorFactory factory) }
{
this.entity.IsReadOnly = factory.RestrictEditableControls; internal void OnEditorFactoryChanged(EditorFactory factory)
this.containerGenerator.EditorFactory = factory; {
this.entity.IsReadOnly = factory.RestrictEditableControls;
if (this.entity != null) this.containerGenerator.EditorFactory = factory;
{
this.containerGenerator.RemoveAll(); if (this.entity != null)
this.BuildEditors(); {
} this.containerGenerator.RemoveAll();
} this.BuildEditors();
}
internal void OnEntityChanged(Entity entity, Entity oldEntity) }
{
if (entity != null && entity.Validator != null) internal void OnEntityChanged(Entity entity, Entity oldEntity)
{ {
entity.Validator.ErrorsChanged += this.Validator_ErrorsChanged; if (entity != null && entity.Validator != null)
} {
entity.Validator.ErrorsChanged += this.Validator_ErrorsChanged;
if (oldEntity != null && oldEntity.Validator != null) }
{
oldEntity.Validator.ErrorsChanged -= this.Validator_ErrorsChanged; if (oldEntity != null && oldEntity.Validator != null)
} {
} oldEntity.Validator.ErrorsChanged -= this.Validator_ErrorsChanged;
}
internal void OnCommitModeChanged(CommitMode mode, CommitMode previousMode) }
{
this.containerGenerator.OnCommitModeChanged(mode, previousMode); internal void OnCommitModeChanged(CommitMode mode, CommitMode previousMode)
} {
this.containerGenerator.OnCommitModeChanged(mode, previousMode);
internal void OnItemChanged(object newItem) }
{
if (this.entityProvider == null) internal void OnItemChanged(object newItem)
{ {
this.CreateDefaultEntityProvider(); if (this.entityProvider == null)
} {
this.CreateDefaultEntityProvider();
this.entityProvider.OnItemChanged(newItem); }
this.containerGenerator.RemoveAll();
this.Entity = this.entityProvider.GenerateEntity(); if (this.entityProvider.Context != newItem)
this.Entity.IsReadOnly = this.View.IsReadOnly; {
this.BuildEditors(); this.entityProvider.OnItemChanged(newItem);
} this.containerGenerator.RemoveAll();
this.Entity = this.entityProvider.GenerateEntity();
internal void OnIsReadOnlyChanged(bool oldValue, bool newValue) this.Entity.IsReadOnly = this.View.IsReadOnly;
{ }
if (this.Entity != null)
{ this.BuildEditors();
this.Entity.IsReadOnly = newValue; }
this.containerGenerator.EditorFactory.RestrictEditableControls = newValue;
this.containerGenerator.RemoveAll(); internal void OnIsReadOnlyChanged(bool oldValue, bool newValue)
this.BuildEditors(); {
} if (this.Entity != null)
} {
this.Entity.IsReadOnly = newValue;
internal void OnIterationModeChanged(PropertyIteratorMode iterationMode) this.containerGenerator.EditorFactory.RestrictEditableControls = newValue;
{ this.containerGenerator.RemoveAll();
this.entityProvider.IteratorMode = iterationMode; this.BuildEditors();
} }
}
internal void OnEntityProviderChanged(EntityProvider provider)
{ internal void OnIterationModeChanged(PropertyIteratorMode iterationMode)
this.entityProvider = provider; {
} this.entityProvider.IteratorMode = iterationMode;
}
internal void RefreshLayout()
{ internal void OnEntityProviderChanged(EntityProvider provider)
this.containerGenerator.RemoveAll(); {
this.BuildEditors(); this.entityProvider = provider;
} }
private void Validator_ErrorsChanged(object sender, System.ComponentModel.DataErrorsChangedEventArgs e) internal void RefreshLayout()
{ {
this.TransactionService.ErrorsChanged(sender, e.PropertyName); this.containerGenerator.RemoveAll();
} this.BuildEditors();
}
private void CreateDefaultEntityProvider()
{ internal object GetEditorCurrentValue(EntityProperty entityProperty)
this.entityProvider = new RuntimeEntityProvider(); {
} EntityPropertyControl control;
this.propertyToEditor.TryGetValue(entityProperty, out control);
private void BuildEditors() return control?.GetCurrentValue();
{ }
var properties = this.entity.Properties.OrderBy((property) => property.Index);
private void Validator_ErrorsChanged(object sender, System.ComponentModel.DataErrorsChangedEventArgs e)
foreach (var entityProperty in properties) {
{ this.TransactionService.ErrorsChanged(sender, e.PropertyName);
object groupContainer = null; }
if (entityProperty.GroupKey != null) private void CreateDefaultEntityProvider()
{ {
groupContainer = this.GetOrCreateGroupContainer(entityProperty.GroupKey); this.entityProvider = new RuntimeEntityProvider();
} }
var editor = this.containerGenerator.CreateContainer(entityProperty); private void BuildEditors()
{
if (editor != null) if (this.View.IsTemplateApplied)
{ {
this.containerGenerator.PrepareContainer(editor, entityProperty); this.propertyToEditor.Clear();
if (entityProperty.GroupKey == null) var properties = this.entity.Properties.OrderBy((property) => property.Index);
{
this.View.AddEditor(editor); foreach (var entityProperty in properties)
} {
else object groupContainer = null;
{ if (entityProperty.GroupKey != null)
this.containerGenerator.AddViewToGroupContainer(groupContainer, editor); {
} groupContainer = this.GetOrCreateGroupContainer(entityProperty.GroupKey);
} }
}
} var editor = this.containerGenerator.CreateContainer(entityProperty);
if (editor != null)
private object GetOrCreateGroupContainer(string groupKey) {
{ this.propertyToEditor.Add(entityProperty, editor);
var container = this.containerGenerator.GetGroupContainer(groupKey); this.containerGenerator.PrepareContainer(editor, entityProperty);
if (container == null) if (entityProperty.GroupKey == null)
{ {
container = this.containerGenerator.CreateGroupContainer(groupKey); this.View.AddEditor(editor);
this.containerGenerator.PrepareGroupContainer(container, groupKey); }
} else
{
return container; this.containerGenerator.AddViewToGroupContainer(groupContainer, editor);
} }
} }
} }
}
}
private object GetOrCreateGroupContainer(string groupKey)
{
var container = this.containerGenerator.GetGroupContainer(groupKey);
if (container == null)
{
container = this.containerGenerator.CreateGroupContainer(groupKey);
this.containerGenerator.PrepareGroupContainer(container, groupKey);
}
return container;
}
}
}

Просмотреть файл

@ -11,6 +11,7 @@ namespace Telerik.UI.Xaml.Controls.Data
CommandService CommandService { get; } CommandService CommandService { get; }
ITransactionService TransactionService { get; } ITransactionService TransactionService { get; }
bool IsTemplateApplied { get; }
bool IsReadOnly { get; } bool IsReadOnly { get; }
void AddEditor(object element); void AddEditor(object element);

Просмотреть файл

@ -1,110 +1,115 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Telerik.UI.Xaml.Controls.Input; using Telerik.UI.Xaml.Controls.Input;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents an AutoCompleteEditor control. /// Represents an AutoCompleteEditor control.
/// </summary> /// </summary>
public class AutoCompleteEditor : RadAutoCompleteBox, ITypeEditor public class AutoCompleteEditor : RadAutoCompleteBox, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="LabelIconStyle"/> dependency property. /// Identifies the <see cref="LabelIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty LabelIconStyleProperty = public static readonly DependencyProperty LabelIconStyleProperty =
DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(AutoCompleteEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(AutoCompleteEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="ErrorIconStyle"/> dependency property. /// Identifies the <see cref="ErrorIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ErrorIconStyleProperty = public static readonly DependencyProperty ErrorIconStyleProperty =
DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(AutoCompleteEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(AutoCompleteEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="HasErrors"/> dependency property. /// Identifies the <see cref="HasErrors"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HasErrorsProperty = public static readonly DependencyProperty HasErrorsProperty =
DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(AutoCompleteEditor), new PropertyMetadata(false)); DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(AutoCompleteEditor), new PropertyMetadata(false));
/// <summary> /// <summary>
/// Identifies the <see cref="IconDisplayMode"/> dependency property. /// Identifies the <see cref="IconDisplayMode"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty IconDisplayModeProperty = public static readonly DependencyProperty IconDisplayModeProperty =
DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(AutoCompleteEditor), new PropertyMetadata(EditorIconDisplayMode.None)); DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(AutoCompleteEditor), new PropertyMetadata(EditorIconDisplayMode.None));
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="AutoCompleteEditor"/> class. /// Initializes a new instance of the <see cref="AutoCompleteEditor"/> class.
/// </summary> /// </summary>
public AutoCompleteEditor() public AutoCompleteEditor()
{ {
this.DefaultStyleKey = typeof(AutoCompleteEditor); this.DefaultStyleKey = typeof(AutoCompleteEditor);
} }
/// <summary> /// <summary>
/// Gets or sets a value indicating whether the control has errors. /// Gets or sets a value indicating whether the control has errors.
/// </summary> /// </summary>
public bool HasErrors public bool HasErrors
{ {
get { return (bool)GetValue(HasErrorsProperty); } get { return (bool)GetValue(HasErrorsProperty); }
set { this.SetValue(HasErrorsProperty, value); } set { this.SetValue(HasErrorsProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the error icon of the editor. /// Gets or sets the style for the error icon of the editor.
/// </summary> /// </summary>
public Style ErrorIconStyle public Style ErrorIconStyle
{ {
get { return (Style)GetValue(ErrorIconStyleProperty); } get { return (Style)GetValue(ErrorIconStyleProperty); }
set { this.SetValue(ErrorIconStyleProperty, value); } set { this.SetValue(ErrorIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the label icon of the editor. /// Gets or sets the style for the label icon of the editor.
/// </summary> /// </summary>
public Style LabelIconStyle public Style LabelIconStyle
{ {
get { return (Style)GetValue(LabelIconStyleProperty); } get { return (Style)GetValue(LabelIconStyleProperty); }
set { this.SetValue(LabelIconStyleProperty, value); } set { this.SetValue(LabelIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the display mode of the icon for the editor. /// Gets or sets the display mode of the icon for the editor.
/// </summary> /// </summary>
public EditorIconDisplayMode IconDisplayMode public EditorIconDisplayMode IconDisplayMode
{ {
get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); } get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); }
set { this.SetValue(IconDisplayModeProperty, value); } set { this.SetValue(IconDisplayModeProperty, value); }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.Text;
public void BindEditor() }
{
Binding b = new Binding() { Mode = BindingMode.TwoWay }; /// <summary>
b.Path = new PropertyPath("PropertyValue"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(AutoCompleteEditor.TextProperty, b); /// </summary>
public void BindEditor()
Binding b1 = new Binding(); {
b1.Path = new PropertyPath("Errors.Count"); Binding b = new Binding() { Mode = BindingMode.TwoWay };
b1.Converter = new EditorIconVisibilityConverter(); b.Path = new PropertyPath("PropertyValue");
b1.ConverterParameter = "HasErrors"; this.SetBinding(AutoCompleteEditor.TextProperty, b);
this.SetBinding(AutoCompleteEditor.HasErrorsProperty, b1);
Binding b1 = new Binding();
Binding b2 = new Binding(); b1.Path = new PropertyPath("Errors.Count");
b2.Path = new PropertyPath("Watermark"); b1.Converter = new EditorIconVisibilityConverter();
this.SetBinding(AutoCompleteEditor.WatermarkProperty, b2); b1.ConverterParameter = "HasErrors";
this.SetBinding(AutoCompleteEditor.HasErrorsProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Watermark");
this.SetBinding(AutoCompleteEditor.IsEnabledProperty, b3); this.SetBinding(AutoCompleteEditor.WatermarkProperty, b2);
Binding b4 = new Binding(); Binding b3 = new Binding();
b4.Path = new PropertyPath("ValueOptions"); b3.Converter = new IsEnabledEditorConvetrer();
this.SetBinding(AutoCompleteEditor.ItemsSourceProperty, b4); b3.Path = new PropertyPath(string.Empty);
} this.SetBinding(AutoCompleteEditor.IsEnabledProperty, b3);
}
} Binding b4 = new Binding();
b4.Path = new PropertyPath("ValueOptions");
this.SetBinding(AutoCompleteEditor.ItemsSourceProperty, b4);
}
}
}

Просмотреть файл

@ -9,7 +9,7 @@ namespace Telerik.UI.Xaml.Controls.Data
/// <summary> /// <summary>
/// Represents a BooleanEditor control. /// Represents a BooleanEditor control.
/// </summary> /// </summary>
public class BooleanEditor : CheckBox, ITypeEditor public class BooleanEditor : CheckBox, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="CheckedStateBackgroundBrush"/> dependency property. /// Identifies the <see cref="CheckedStateBackgroundBrush"/> dependency property.
@ -38,6 +38,11 @@ namespace Telerik.UI.Xaml.Controls.Data
{ {
this.SetValue(CheckedStateBackgroundBrushProperty, value); this.SetValue(CheckedStateBackgroundBrushProperty, value);
} }
}
object IEditor.GetCurrentValue()
{
return this.IsChecked;
} }
/// <summary> /// <summary>
@ -53,6 +58,6 @@ namespace Telerik.UI.Xaml.Controls.Data
b3.Converter = new IsEnabledEditorConvetrer(); b3.Converter = new IsEnabledEditorConvetrer();
b3.Path = new PropertyPath(string.Empty); b3.Path = new PropertyPath(string.Empty);
this.SetBinding(BooleanEditor.IsEnabledProperty, b3); this.SetBinding(BooleanEditor.IsEnabledProperty, b3);
} }
} }
} }

Просмотреть файл

@ -1,171 +1,182 @@
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Input; using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Shapes; using Windows.UI.Xaml.Shapes;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a ToggleSwitchCustomEditor control. /// Represents a ToggleSwitchCustomEditor control.
/// </summary> /// </summary>
public class ToggleSwitchCustomEditor : CustomEditorBase<ToggleSwitch> public class ToggleSwitchCustomEditor : CustomEditorBase<ToggleSwitch>, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="SelectedBackgroundBrush"/> dependency property. /// Identifies the <see cref="SelectedBackgroundBrush"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty SelectedBackgroundBrushProperty = public static readonly DependencyProperty SelectedBackgroundBrushProperty =
DependencyProperty.Register(nameof(SelectedBackgroundBrush), typeof(Brush), typeof(ToggleSwitchCustomEditor), new PropertyMetadata(null, OnSelectedBackgroundBrushChanged)); DependencyProperty.Register(nameof(SelectedBackgroundBrush), typeof(Brush), typeof(ToggleSwitchCustomEditor), new PropertyMetadata(null, OnSelectedBackgroundBrushChanged));
/// <summary> /// <summary>
/// Identifies the <see cref="OffStateBackground"/> dependency property. /// Identifies the <see cref="OffStateBackground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty PointerOverBackgroundBrushProperty = public static readonly DependencyProperty PointerOverBackgroundBrushProperty =
DependencyProperty.Register(nameof(PointerOverBackgroundBrush), typeof(Brush), typeof(ToggleSwitchCustomEditor), new PropertyMetadata(null, OnPointerOverBackgroundBrushPropertyChanged)); DependencyProperty.Register(nameof(PointerOverBackgroundBrush), typeof(Brush), typeof(ToggleSwitchCustomEditor), new PropertyMetadata(null, OnPointerOverBackgroundBrushPropertyChanged));
/// <summary> /// <summary>
/// Identifies the <see cref="OffStateBackground"/> dependency property. /// Identifies the <see cref="OffStateBackground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty OffStateBackgroundProperty = public static readonly DependencyProperty OffStateBackgroundProperty =
DependencyProperty.Register(nameof(OffStateBackground), typeof(Brush), typeof(ToggleSwitchCustomEditor), new PropertyMetadata(null, OnOffStateBackgroundPropertyChanged)); DependencyProperty.Register(nameof(OffStateBackground), typeof(Brush), typeof(ToggleSwitchCustomEditor), new PropertyMetadata(null, OnOffStateBackgroundPropertyChanged));
private const string SwitchKnobBoundsPartName = "SwitchKnobBounds"; private const string SwitchKnobBoundsPartName = "SwitchKnobBounds";
private const string SwitchKnobOffPartName = "SwitchKnobOff"; private const string SwitchKnobOffPartName = "SwitchKnobOff";
private const string OuterBorderPartName = "OuterBorder"; private const string OuterBorderPartName = "OuterBorder";
private Rectangle switchKnobRect; private Rectangle switchKnobRect;
private Ellipse switchKnobOffEllipse; private Ellipse switchKnobOffEllipse;
private Rectangle outerBorderRect; private Rectangle outerBorderRect;
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="ToggleSwitchCustomEditor"/> class. /// Initializes a new instance of the <see cref="ToggleSwitchCustomEditor"/> class.
/// </summary> /// </summary>
public ToggleSwitchCustomEditor() public ToggleSwitchCustomEditor()
{ {
this.DefaultStyleKey = typeof(ToggleSwitchCustomEditor); this.DefaultStyleKey = typeof(ToggleSwitchCustomEditor);
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the rectangle of the ToggleSwitch knob. /// Gets or sets the Background of the rectangle of the ToggleSwitch knob.
/// </summary> /// </summary>
public Brush SelectedBackgroundBrush public Brush SelectedBackgroundBrush
{ {
get get
{ {
return (Brush)GetValue(SelectedBackgroundBrushProperty); return (Brush)GetValue(SelectedBackgroundBrushProperty);
} }
set set
{ {
this.SetValue(SelectedBackgroundBrushProperty, value); this.SetValue(SelectedBackgroundBrushProperty, value);
} }
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the ellipse of the ToggleSwitch knob. /// Gets or sets the Background of the ellipse of the ToggleSwitch knob.
/// </summary> /// </summary>
public Brush OffStateBackground public Brush OffStateBackground
{ {
get get
{ {
return (Brush)GetValue(OffStateBackgroundProperty); return (Brush)GetValue(OffStateBackgroundProperty);
} }
set set
{ {
this.SetValue(OffStateBackgroundProperty, value); this.SetValue(OffStateBackgroundProperty, value);
} }
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the ellipse of the ToggleSwitch knob. /// Gets or sets the Background of the ellipse of the ToggleSwitch knob.
/// </summary> /// </summary>
public Brush PointerOverBackgroundBrush public Brush PointerOverBackgroundBrush
{ {
get get
{ {
return (Brush)GetValue(PointerOverBackgroundBrushProperty); return (Brush)GetValue(PointerOverBackgroundBrushProperty);
} }
set set
{ {
this.SetValue(PointerOverBackgroundBrushProperty, value); this.SetValue(PointerOverBackgroundBrushProperty, value);
} }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Occurs when the <see cref="M:OnApplyTemplate" /> method has been called and the template is already successfully applied. {
/// </summary> var editor = this.EditorControl;
protected override void OnTemplateApplied() if (editor != null)
{ {
base.OnTemplateApplied(); return editor.IsOn;
}
if (this.EditorControl != null)
{ return null;
this.EditorControl.Loaded += this.OnToggleSwitchEditorLoaded; }
}
} /// <summary>
/// Occurs when the <see cref="M:OnApplyTemplate" /> method has been called and the template is already successfully applied.
/// <inheritdoc /> /// </summary>
protected override void OnPointerEntered(PointerRoutedEventArgs e) protected override void OnTemplateApplied()
{ {
base.OnPointerEntered(e); base.OnTemplateApplied();
if (this.switchKnobRect != null) if (this.EditorControl != null)
{ {
this.switchKnobRect.Fill = this.PointerOverBackgroundBrush; this.EditorControl.Loaded += this.OnToggleSwitchEditorLoaded;
this.switchKnobRect.Stroke = this.PointerOverBackgroundBrush; }
} }
}
/// <inheritdoc />
/// <inheritdoc /> protected override void OnPointerEntered(PointerRoutedEventArgs e)
protected override void OnPointerExited(PointerRoutedEventArgs e) {
{ base.OnPointerEntered(e);
base.OnPointerExited(e);
if (this.switchKnobRect != null)
if (this.switchKnobRect != null) {
{ this.switchKnobRect.Fill = this.PointerOverBackgroundBrush;
this.switchKnobRect.Fill = this.SelectedBackgroundBrush; this.switchKnobRect.Stroke = this.PointerOverBackgroundBrush;
this.switchKnobRect.Stroke = this.SelectedBackgroundBrush; }
} }
}
/// <inheritdoc />
private static void OnSelectedBackgroundBrushChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) protected override void OnPointerExited(PointerRoutedEventArgs e)
{ {
var toggleSwitchEditor = d as ToggleSwitchCustomEditor; base.OnPointerExited(e);
toggleSwitchEditor.UpdateSwitchBrushes();
} if (this.switchKnobRect != null)
{
private static void OnOffStateBackgroundPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) this.switchKnobRect.Fill = this.SelectedBackgroundBrush;
{ this.switchKnobRect.Stroke = this.SelectedBackgroundBrush;
var toggleSwitchEditor = d as ToggleSwitchCustomEditor; }
toggleSwitchEditor.UpdateSwitchBrushes(); }
}
private static void OnSelectedBackgroundBrushChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
private static void OnPointerOverBackgroundBrushPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
{ var toggleSwitchEditor = d as ToggleSwitchCustomEditor;
var toggleSwitchEditor = d as ToggleSwitchCustomEditor; toggleSwitchEditor.UpdateSwitchBrushes();
toggleSwitchEditor.UpdateSwitchBrushes(); }
}
private static void OnOffStateBackgroundPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
private void OnToggleSwitchEditorLoaded(object sender, RoutedEventArgs e) {
{ var toggleSwitchEditor = d as ToggleSwitchCustomEditor;
this.switchKnobRect = ElementTreeHelper.FindVisualDescendant<Rectangle>(this.EditorControl, a => a.GetType() == typeof(Rectangle) && ((Rectangle)a).Name == SwitchKnobBoundsPartName); toggleSwitchEditor.UpdateSwitchBrushes();
this.switchKnobOffEllipse = ElementTreeHelper.FindVisualDescendant<Ellipse>(this.EditorControl, a => a.GetType() == typeof(Ellipse) && ((Ellipse)a).Name == SwitchKnobOffPartName); }
this.outerBorderRect = ElementTreeHelper.FindVisualDescendant<Rectangle>(this.EditorControl, a => a.GetType() == typeof(Rectangle) && ((Rectangle)a).Name == OuterBorderPartName);
private static void OnPointerOverBackgroundBrushPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
this.UpdateSwitchBrushes(); {
this.EditorControl.Loaded -= this.OnToggleSwitchEditorLoaded; var toggleSwitchEditor = d as ToggleSwitchCustomEditor;
} toggleSwitchEditor.UpdateSwitchBrushes();
}
private void UpdateSwitchBrushes()
{ private void OnToggleSwitchEditorLoaded(object sender, RoutedEventArgs e)
if (this.switchKnobRect != null) {
{ this.switchKnobRect = ElementTreeHelper.FindVisualDescendant<Rectangle>(this.EditorControl, a => a.GetType() == typeof(Rectangle) && ((Rectangle)a).Name == SwitchKnobBoundsPartName);
this.switchKnobRect.Fill = this.SelectedBackgroundBrush; this.switchKnobOffEllipse = ElementTreeHelper.FindVisualDescendant<Ellipse>(this.EditorControl, a => a.GetType() == typeof(Ellipse) && ((Ellipse)a).Name == SwitchKnobOffPartName);
} this.outerBorderRect = ElementTreeHelper.FindVisualDescendant<Rectangle>(this.EditorControl, a => a.GetType() == typeof(Rectangle) && ((Rectangle)a).Name == OuterBorderPartName);
if (this.switchKnobOffEllipse != null) this.UpdateSwitchBrushes();
{ this.EditorControl.Loaded -= this.OnToggleSwitchEditorLoaded;
this.switchKnobOffEllipse.Fill = this.OffStateBackground; }
this.outerBorderRect.Stroke = this.OffStateBackground;
} private void UpdateSwitchBrushes()
} {
} if (this.switchKnobRect != null)
} {
this.switchKnobRect.Fill = this.SelectedBackgroundBrush;
}
if (this.switchKnobOffEllipse != null)
{
this.switchKnobOffEllipse.Fill = this.OffStateBackground;
this.outerBorderRect.Stroke = this.OffStateBackground;
}
}
}
}

Просмотреть файл

@ -1,154 +1,159 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Telerik.UI.Xaml.Controls.Input; using Telerik.UI.Xaml.Controls.Input;
using Telerik.UI.Xaml.Controls.Input.DateTimePickers; using Telerik.UI.Xaml.Controls.Input.DateTimePickers;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a DateEditor control. /// Represents a DateEditor control.
/// </summary> /// </summary>
public class DateEditor : RadDatePicker, ITypeEditor public class DateEditor : RadDatePicker, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="LabelIconStyle"/> dependency property. /// Identifies the <see cref="LabelIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty LabelIconStyleProperty = public static readonly DependencyProperty LabelIconStyleProperty =
DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(DateEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(DateEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="ErrorIconStyle"/> dependency property. /// Identifies the <see cref="ErrorIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ErrorIconStyleProperty = public static readonly DependencyProperty ErrorIconStyleProperty =
DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(DateEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(DateEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="HasErrors"/> dependency property. /// Identifies the <see cref="HasErrors"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HasErrorsProperty = public static readonly DependencyProperty HasErrorsProperty =
DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(DateEditor), new PropertyMetadata(false)); DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(DateEditor), new PropertyMetadata(false));
/// <summary> /// <summary>
/// Identifies the <see cref="IconDisplayMode"/> dependency property. /// Identifies the <see cref="IconDisplayMode"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty IconDisplayModeProperty = public static readonly DependencyProperty IconDisplayModeProperty =
DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(DateEditor), new PropertyMetadata(EditorIconDisplayMode.None)); DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(DateEditor), new PropertyMetadata(EditorIconDisplayMode.None));
/// <summary> /// <summary>
/// Identifies the <see cref="HighlightFillBrush"/> dependency property. /// Identifies the <see cref="HighlightFillBrush"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HighlightFillBrushProperty = public static readonly DependencyProperty HighlightFillBrushProperty =
DependencyProperty.Register(nameof(HighlightFillBrush), typeof(Brush), typeof(DateEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(HighlightFillBrush), typeof(Brush), typeof(DateEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="SelectedBackground"/> dependency property. /// Identifies the <see cref="SelectedBackground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty SelectedBackgroundProperty = public static readonly DependencyProperty SelectedBackgroundProperty =
DependencyProperty.Register(nameof(SelectedBackground), typeof(Brush), typeof(DateEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(SelectedBackground), typeof(Brush), typeof(DateEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="SelectedForeground"/> dependency property. /// Identifies the <see cref="SelectedForeground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty SelectedForegroundProperty = public static readonly DependencyProperty SelectedForegroundProperty =
DependencyProperty.Register(nameof(SelectedForeground), typeof(Brush), typeof(DateEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(SelectedForeground), typeof(Brush), typeof(DateEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="DateEditor"/> class. /// Initializes a new instance of the <see cref="DateEditor"/> class.
/// </summary> /// </summary>
public DateEditor() public DateEditor()
{ {
this.DefaultStyleKey = typeof(DateEditor); this.DefaultStyleKey = typeof(DateEditor);
} }
/// <summary> /// <summary>
/// Gets or sets the display mode of the icon for the editor. /// Gets or sets the display mode of the icon for the editor.
/// </summary> /// </summary>
public EditorIconDisplayMode IconDisplayMode public EditorIconDisplayMode IconDisplayMode
{ {
get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); } get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); }
set { this.SetValue(IconDisplayModeProperty, value); } set { this.SetValue(IconDisplayModeProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets a value indicating whether the control has errors. /// Gets or sets a value indicating whether the control has errors.
/// </summary> /// </summary>
public bool HasErrors public bool HasErrors
{ {
get { return (bool)GetValue(HasErrorsProperty); } get { return (bool)GetValue(HasErrorsProperty); }
set { this.SetValue(HasErrorsProperty, value); } set { this.SetValue(HasErrorsProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the label icon of the editor. /// Gets or sets the style for the label icon of the editor.
/// </summary> /// </summary>
public Style LabelIconStyle public Style LabelIconStyle
{ {
get { return (Style)GetValue(LabelIconStyleProperty); } get { return (Style)GetValue(LabelIconStyleProperty); }
set { this.SetValue(LabelIconStyleProperty, value); } set { this.SetValue(LabelIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the error icon of the editor. /// Gets or sets the style for the error icon of the editor.
/// </summary> /// </summary>
public Style ErrorIconStyle public Style ErrorIconStyle
{ {
get { return (Style)GetValue(ErrorIconStyleProperty); } get { return (Style)GetValue(ErrorIconStyleProperty); }
set { this.SetValue(ErrorIconStyleProperty, value); } set { this.SetValue(ErrorIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the rectangle area of the <see cref="CheckBox"/> when the control is checked. /// Gets or sets the Background of the rectangle area of the <see cref="CheckBox"/> when the control is checked.
/// </summary> /// </summary>
public Brush HighlightFillBrush public Brush HighlightFillBrush
{ {
get { return (Brush)GetValue(HighlightFillBrushProperty); } get { return (Brush)GetValue(HighlightFillBrushProperty); }
set { this.SetValue(HighlightFillBrushProperty, value); } set { this.SetValue(HighlightFillBrushProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected. /// Gets or sets the Background of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected.
/// </summary> /// </summary>
public Brush SelectedBackground public Brush SelectedBackground
{ {
get { return (Brush)GetValue(SelectedBackgroundProperty); } get { return (Brush)GetValue(SelectedBackgroundProperty); }
set { this.SetValue(SelectedBackgroundProperty, value); } set { this.SetValue(SelectedBackgroundProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the Foreground of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected. /// Gets or sets the Foreground of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected.
/// </summary> /// </summary>
public Brush SelectedForeground public Brush SelectedForeground
{ {
get { return (Brush)GetValue(SelectedForegroundProperty); } get { return (Brush)GetValue(SelectedForegroundProperty); }
set { this.SetValue(SelectedForegroundProperty, value); } set { this.SetValue(SelectedForegroundProperty, value); }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.Value;
public void BindEditor() }
{
Binding b = new Binding() { Mode = BindingMode.TwoWay }; /// <summary>
b.Path = new Windows.UI.Xaml.PropertyPath("PropertyValue"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(DateEditor.ValueProperty, b); /// </summary>
public void BindEditor()
Binding b1 = new Binding(); {
b1.Path = new PropertyPath("Errors.Count"); Binding b = new Binding() { Mode = BindingMode.TwoWay };
b1.Converter = new EditorIconVisibilityConverter(); b.Path = new Windows.UI.Xaml.PropertyPath("PropertyValue");
b1.ConverterParameter = "HasErrors"; this.SetBinding(DateEditor.ValueProperty, b);
this.SetBinding(DateEditor.HasErrorsProperty, b1);
Binding b1 = new Binding();
Binding b2 = new Binding(); b1.Path = new PropertyPath("Errors.Count");
b2.Path = new PropertyPath("Watermark"); b1.Converter = new EditorIconVisibilityConverter();
this.SetBinding(DateEditor.EmptyContentProperty, b2); b1.ConverterParameter = "HasErrors";
this.SetBinding(DateEditor.HasErrorsProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Watermark");
this.SetBinding(DateEditor.IsEnabledProperty, b3); this.SetBinding(DateEditor.EmptyContentProperty, b2);
}
} Binding b3 = new Binding();
} b3.Converter = new IsEnabledEditorConvetrer();
b3.Path = new PropertyPath(string.Empty);
this.SetBinding(DateEditor.IsEnabledProperty, b3);
}
}
}

Просмотреть файл

@ -28,7 +28,7 @@ namespace Telerik.UI.Xaml.Controls.Data.DataForm.View
internal EditorFactory EditorFactory { get; set; } internal EditorFactory EditorFactory { get; set; }
public object CreateContainer(EntityProperty entityProperty) public EntityPropertyControl CreateContainer(EntityProperty entityProperty)
{ {
var element = this.EditorFactory.CreateEditor(entityProperty); var element = this.EditorFactory.CreateEditor(entityProperty);

Просмотреть файл

@ -1,4 +1,5 @@
using Telerik.Data.Core; using System;
using Telerik.Data.Core;
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
@ -69,8 +70,8 @@ namespace Telerik.UI.Xaml.Controls.Data
/// Identifies the <see cref="PositiveMessageViewColumn"/> dependency property. /// Identifies the <see cref="PositiveMessageViewColumn"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty PositiveMessageViewColumnProperty = public static readonly DependencyProperty PositiveMessageViewColumnProperty =
DependencyProperty.Register(nameof(PositiveMessageViewColumn), typeof(int), typeof(EntityPropertyControl), new PropertyMetadata(0, PositiveMessageViewColumnChanged)); DependencyProperty.Register(nameof(PositiveMessageViewColumn), typeof(int), typeof(EntityPropertyControl), new PropertyMetadata(0, PositiveMessageViewColumnChanged));
internal Grid container; internal Grid container;
private EntityProperty property; private EntityProperty property;
@ -89,8 +90,8 @@ namespace Telerik.UI.Xaml.Controls.Data
{ {
get { return (int)GetValue(RowCountProperty); } get { return (int)GetValue(RowCountProperty); }
set { this.SetValue(RowCountProperty, value); } set { this.SetValue(RowCountProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets number of columns in the control. /// Gets or sets number of columns in the control.
/// </summary> /// </summary>
@ -143,8 +144,8 @@ namespace Telerik.UI.Xaml.Controls.Data
{ {
get { return (int)GetValue(ErrorViewRowProperty); } get { return (int)GetValue(ErrorViewRowProperty); }
set { this.SetValue(ErrorViewRowProperty, value); } set { this.SetValue(ErrorViewRowProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the column index where the error is visualized. /// Gets or sets the column index where the error is visualized.
/// </summary> /// </summary>
@ -218,6 +219,17 @@ namespace Telerik.UI.Xaml.Controls.Data
{ {
this.container.Children.Add(view); this.container.Children.Add(view);
} }
}
internal object GetCurrentValue()
{
var editor = this.View as IEditor;
if (editor != null)
{
return editor.GetCurrentValue();
}
return null;
} }
/// <inheritdoc/> /// <inheritdoc/>
@ -270,8 +282,8 @@ namespace Telerik.UI.Xaml.Controls.Data
{ {
editor.PositiveMessageView.SetValue(Grid.ColumnProperty, e.NewValue); editor.PositiveMessageView.SetValue(Grid.ColumnProperty, e.NewValue);
} }
} }
private static void OnRowCountChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) private static void OnRowCountChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{ {
var editor = d as EntityPropertyControl; var editor = d as EntityPropertyControl;

Просмотреть файл

@ -1,60 +1,65 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents an EnumEditor control. /// Represents an EnumEditor control.
/// </summary> /// </summary>
public class EnumEditor : ComboBox, ITypeEditor public class EnumEditor : ComboBox, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="EnumEditor"/> class. /// Initializes a new instance of the <see cref="EnumEditor"/> class.
/// </summary> /// </summary>
public EnumEditor() public EnumEditor()
{ {
this.DefaultStyleKey = typeof(EnumEditor); this.DefaultStyleKey = typeof(EnumEditor);
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.SelectedItem;
public void BindEditor() }
{
Binding b = new Binding() { Mode = BindingMode.TwoWay }; /// <summary>
b.Path = new PropertyPath("PropertyValue"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(EnumEditor.SelectedItemProperty, b); /// </summary>
Binding b1 = new Binding(); public void BindEditor()
b1.Converter = new EnumToItemsSourceConverter(); {
b1.Path = new PropertyPath("PropertyType"); Binding b = new Binding() { Mode = BindingMode.TwoWay };
this.SetBinding(EnumEditor.ItemsSourceProperty, b1); b.Path = new PropertyPath("PropertyValue");
this.SetBinding(EnumEditor.SelectedItemProperty, b);
Binding b2 = new Binding(); Binding b1 = new Binding();
b2.Path = new PropertyPath("Watermark"); b1.Converter = new EnumToItemsSourceConverter();
this.SetBinding(EnumEditor.PlaceholderTextProperty, b2); b1.Path = new PropertyPath("PropertyType");
this.SetBinding(EnumEditor.ItemsSourceProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Watermark");
this.SetBinding(EnumEditor.IsEnabledProperty, b3); this.SetBinding(EnumEditor.PlaceholderTextProperty, b2);
Binding b4 = new Binding(); Binding b3 = new Binding();
b4.Path = new PropertyPath("PropertyValue"); b3.Converter = new IsEnabledEditorConvetrer();
b4.Converter = new EnumToIndexConverter(); b3.Path = new PropertyPath(string.Empty);
this.SetBinding(EnumEditor.SelectedIndexProperty, b4); this.SetBinding(EnumEditor.IsEnabledProperty, b3);
}
Binding b4 = new Binding();
/// <summary> b4.Path = new PropertyPath("PropertyValue");
/// Creates or identifies the element that is used to display the given item. b4.Converter = new EnumToIndexConverter();
/// </summary> this.SetBinding(EnumEditor.SelectedIndexProperty, b4);
/// <returns> }
/// The element that is used to display the given item.
/// </returns> /// <summary>
protected override DependencyObject GetContainerForItemOverride() /// Creates or identifies the element that is used to display the given item.
{ /// </summary>
return new DataFormComboBoxItem(); /// <returns>
} /// The element that is used to display the given item.
} /// </returns>
} protected override DependencyObject GetContainerForItemOverride()
{
return new DataFormComboBoxItem();
}
}
}

Просмотреть файл

@ -0,0 +1,7 @@
namespace Telerik.UI.Xaml.Controls.Data
{
internal interface IEditor
{
object GetCurrentValue();
}
}

Просмотреть файл

@ -8,7 +8,7 @@ namespace Telerik.UI.Xaml.Controls.Data
/// <summary> /// <summary>
/// Represents a ListEditor control. /// Represents a ListEditor control.
/// </summary> /// </summary>
public class ListEditor : ComboBox, ITypeEditor public class ListEditor : ComboBox, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="ListEditor"/> class. /// Initializes a new instance of the <see cref="ListEditor"/> class.
@ -18,6 +18,11 @@ namespace Telerik.UI.Xaml.Controls.Data
this.DefaultStyleKey = typeof(ListEditor); this.DefaultStyleKey = typeof(ListEditor);
} }
object IEditor.GetCurrentValue()
{
return this.SelectedItem;
}
/// <summary> /// <summary>
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
/// </summary> /// </summary>
@ -50,6 +55,6 @@ namespace Telerik.UI.Xaml.Controls.Data
protected override DependencyObject GetContainerForItemOverride() protected override DependencyObject GetContainerForItemOverride()
{ {
return new DataFormComboBoxItem(); return new DataFormComboBoxItem();
} }
} }
} }

Просмотреть файл

@ -1,147 +1,152 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Telerik.UI.Xaml.Controls.Input; using Telerik.UI.Xaml.Controls.Input;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a NumericEditor control. /// Represents a NumericEditor control.
/// </summary> /// </summary>
public class NumericEditor : RadNumericBox, ITypeEditor public class NumericEditor : RadNumericBox, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="ErrorIconStyle"/> dependency property. /// Identifies the <see cref="ErrorIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ErrorIconStyleProperty = public static readonly DependencyProperty ErrorIconStyleProperty =
DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(NumericEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(NumericEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="HasErrors"/> dependency property. /// Identifies the <see cref="HasErrors"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HasErrorsProperty = public static readonly DependencyProperty HasErrorsProperty =
DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(NumericEditor), new PropertyMetadata(false)); DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(NumericEditor), new PropertyMetadata(false));
/// <summary> /// <summary>
/// Identifies the <see cref="LabelIconStyle"/> dependency property. /// Identifies the <see cref="LabelIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty LabelIconStyleProperty = public static readonly DependencyProperty LabelIconStyleProperty =
DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(NumericEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(NumericEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="IconDisplayMode"/> dependency property. /// Identifies the <see cref="IconDisplayMode"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty IconDisplayModeProperty = public static readonly DependencyProperty IconDisplayModeProperty =
DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(NumericEditor), new PropertyMetadata(EditorIconDisplayMode.None)); DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(NumericEditor), new PropertyMetadata(EditorIconDisplayMode.None));
/// <summary> /// <summary>
/// Identifies the <see cref="ButtonsBackground"/> dependency property. /// Identifies the <see cref="ButtonsBackground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ButtonsBackgroundProperty = public static readonly DependencyProperty ButtonsBackgroundProperty =
DependencyProperty.Register("ButtonsBackground", typeof(Brush), typeof(NumericEditor), new PropertyMetadata(null)); DependencyProperty.Register("ButtonsBackground", typeof(Brush), typeof(NumericEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="ButtonsPointerOverBackgroundBrush"/> dependency property. /// Identifies the <see cref="ButtonsPointerOverBackgroundBrush"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ButtonsPointerOverBackgroundBrushProperty = public static readonly DependencyProperty ButtonsPointerOverBackgroundBrushProperty =
DependencyProperty.Register("ButtonsPointerOverBackgroundBrush", typeof(Brush), typeof(NumericEditor), new PropertyMetadata(null)); DependencyProperty.Register("ButtonsPointerOverBackgroundBrush", typeof(Brush), typeof(NumericEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="NumericEditor"/> class. /// Initializes a new instance of the <see cref="NumericEditor"/> class.
/// </summary> /// </summary>
public NumericEditor() public NumericEditor()
{ {
this.DefaultStyleKey = typeof(NumericEditor); this.DefaultStyleKey = typeof(NumericEditor);
} }
/// <summary> /// <summary>
/// Gets or sets the display mode of the icon for the editor. /// Gets or sets the display mode of the icon for the editor.
/// </summary> /// </summary>
public EditorIconDisplayMode IconDisplayMode public EditorIconDisplayMode IconDisplayMode
{ {
get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); } get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); }
set { this.SetValue(IconDisplayModeProperty, value); } set { this.SetValue(IconDisplayModeProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets a value indicating whether the control has errors. /// Gets or sets a value indicating whether the control has errors.
/// </summary> /// </summary>
public bool HasErrors public bool HasErrors
{ {
get { return (bool)GetValue(HasErrorsProperty); } get { return (bool)GetValue(HasErrorsProperty); }
set { this.SetValue(HasErrorsProperty, value); } set { this.SetValue(HasErrorsProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the label icon of the editor. /// Gets or sets the style for the label icon of the editor.
/// </summary> /// </summary>
public Style LabelIconStyle public Style LabelIconStyle
{ {
get { return (Style)GetValue(LabelIconStyleProperty); } get { return (Style)GetValue(LabelIconStyleProperty); }
set { this.SetValue(LabelIconStyleProperty, value); } set { this.SetValue(LabelIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the error icon of the editor. /// Gets or sets the style for the error icon of the editor.
/// </summary> /// </summary>
public Style ErrorIconStyle public Style ErrorIconStyle
{ {
get { return (Style)GetValue(ErrorIconStyleProperty); } get { return (Style)GetValue(ErrorIconStyleProperty); }
set { this.SetValue(ErrorIconStyleProperty, value); } set { this.SetValue(ErrorIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the background of the up and down buttons of the <see cref="NumericEditor"/>. /// Gets or sets the background of the up and down buttons of the <see cref="NumericEditor"/>.
/// </summary> /// </summary>
public Brush ButtonsBackground public Brush ButtonsBackground
{ {
get { return (Brush)GetValue(ButtonsBackgroundProperty); } get { return (Brush)GetValue(ButtonsBackgroundProperty); }
set { this.SetValue(ButtonsBackgroundProperty, value); } set { this.SetValue(ButtonsBackgroundProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the background of the up and down buttons of the <see cref="NumericEditor"/> when the buttons are pressed. /// Gets or sets the background of the up and down buttons of the <see cref="NumericEditor"/> when the buttons are pressed.
/// </summary> /// </summary>
public Brush ButtonsPointerOverBackgroundBrush public Brush ButtonsPointerOverBackgroundBrush
{ {
get { return (Brush)GetValue(ButtonsPointerOverBackgroundBrushProperty); } get { return (Brush)GetValue(ButtonsPointerOverBackgroundBrushProperty); }
set { this.SetValue(ButtonsPointerOverBackgroundBrushProperty, value); } set { this.SetValue(ButtonsPointerOverBackgroundBrushProperty, value); }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.Value;
public void BindEditor() }
{
Binding b = new Binding() { Mode = BindingMode.TwoWay }; /// <summary>
b.Path = new PropertyPath("PropertyValue"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(NumericEditor.ValueProperty, b); /// </summary>
public void BindEditor()
Binding b1 = new Binding(); {
b1.Path = new PropertyPath("Errors.Count"); Binding b = new Binding() { Mode = BindingMode.TwoWay };
b1.Converter = new EditorIconVisibilityConverter(); b.Path = new PropertyPath("PropertyValue");
b1.ConverterParameter = "HasErrors"; this.SetBinding(NumericEditor.ValueProperty, b);
this.SetBinding(NumericEditor.HasErrorsProperty, b1);
Binding b1 = new Binding();
Binding b2 = new Binding(); b1.Path = new PropertyPath("Errors.Count");
b2.Path = new PropertyPath("Watermark"); b1.Converter = new EditorIconVisibilityConverter();
this.SetBinding(NumericEditor.WatermarkProperty, b2); b1.ConverterParameter = "HasErrors";
this.SetBinding(NumericEditor.HasErrorsProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Watermark");
this.SetBinding(NumericEditor.IsEnabledProperty, b3); this.SetBinding(NumericEditor.WatermarkProperty, b2);
Binding rangeB = new Binding(); Binding b3 = new Binding();
rangeB.Path = new PropertyPath("Range.Min"); b3.Converter = new IsEnabledEditorConvetrer();
rangeB.FallbackValue = double.MinValue; b3.Path = new PropertyPath(string.Empty);
this.SetBinding(NumericEditor.MinimumProperty, rangeB); this.SetBinding(NumericEditor.IsEnabledProperty, b3);
rangeB = new Binding(); Binding rangeB = new Binding();
rangeB.Path = new PropertyPath("Range.Max"); rangeB.Path = new PropertyPath("Range.Min");
rangeB.FallbackValue = double.MaxValue; rangeB.FallbackValue = double.MinValue;
this.SetBinding(NumericEditor.MaximumProperty, rangeB); this.SetBinding(NumericEditor.MinimumProperty, rangeB);
}
} rangeB = new Binding();
} rangeB.Path = new PropertyPath("Range.Max");
rangeB.FallbackValue = double.MaxValue;
this.SetBinding(NumericEditor.MaximumProperty, rangeB);
}
}
}

Просмотреть файл

@ -1,41 +1,46 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Telerik.UI.Xaml.Controls.Input; using Telerik.UI.Xaml.Controls.Input;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a SegmentedCustomEditor control. /// Represents a SegmentedCustomEditor control.
/// </summary> /// </summary>
public class SegmentedCustomEditor : RadSegmentedControl, ITypeEditor public class SegmentedCustomEditor : RadSegmentedControl, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="SegmentedCustomEditor"/> class. /// Initializes a new instance of the <see cref="SegmentedCustomEditor"/> class.
/// </summary> /// </summary>
public SegmentedCustomEditor() public SegmentedCustomEditor()
{ {
this.DefaultStyleKey = typeof(SegmentedCustomEditor); this.DefaultStyleKey = typeof(SegmentedCustomEditor);
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.SelectedItem;
public void BindEditor() }
{
Binding b1 = new Binding(); /// <summary>
b1.Path = new PropertyPath("ValueOptions"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(SegmentedCustomEditor.ItemsSourceProperty, b1); /// </summary>
public void BindEditor()
Binding b2 = new Binding() { Mode = BindingMode.TwoWay }; {
b2.Path = new PropertyPath("PropertyValue"); Binding b1 = new Binding();
this.SetBinding(SegmentedCustomEditor.SelectedItemProperty, b2); b1.Path = new PropertyPath("ValueOptions");
this.SetBinding(SegmentedCustomEditor.ItemsSourceProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding() { Mode = BindingMode.TwoWay };
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("PropertyValue");
this.SetBinding(SegmentedCustomEditor.IsEnabledProperty, b3); this.SetBinding(SegmentedCustomEditor.SelectedItemProperty, b2);
}
} Binding b3 = new Binding();
} b3.Converter = new IsEnabledEditorConvetrer();
b3.Path = new PropertyPath(string.Empty);
this.SetBinding(SegmentedCustomEditor.IsEnabledProperty, b3);
}
}
}

Просмотреть файл

@ -1,71 +1,76 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives; using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a SliderCustomEditor control. /// Represents a SliderCustomEditor control.
/// </summary> /// </summary>
public class SliderCustomEditor : Slider, ITypeEditor public class SliderCustomEditor : Slider, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="ThumbBackground"/> dependency property. /// Identifies the <see cref="ThumbBackground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ThumbBackgroundProperty = public static readonly DependencyProperty ThumbBackgroundProperty =
DependencyProperty.Register(nameof(ThumbBackground), typeof(Brush), typeof(SliderCustomEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(ThumbBackground), typeof(Brush), typeof(SliderCustomEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="SliderCustomEditor"/> class. /// Initializes a new instance of the <see cref="SliderCustomEditor"/> class.
/// </summary> /// </summary>
public SliderCustomEditor() public SliderCustomEditor()
{ {
this.DefaultStyleKey = typeof(SliderCustomEditor); this.DefaultStyleKey = typeof(SliderCustomEditor);
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the Horizontal and Vertical <see cref="Thumb"/>s that are used to change the value of the <see cref="Slider"/> control. /// Gets or sets the Background of the Horizontal and Vertical <see cref="Thumb"/>s that are used to change the value of the <see cref="Slider"/> control.
/// </summary> /// </summary>
public Brush ThumbBackground public Brush ThumbBackground
{ {
get get
{ {
return (Brush)GetValue(ThumbBackgroundProperty); return (Brush)GetValue(ThumbBackgroundProperty);
} }
set set
{ {
this.SetValue(ThumbBackgroundProperty, value); this.SetValue(ThumbBackgroundProperty, value);
} }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.Value;
public void BindEditor() }
{
Binding b1 = new Binding(); /// <summary>
b1.Path = new PropertyPath("Range.Min"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(SliderCustomEditor.MinimumProperty, b1); /// </summary>
public void BindEditor()
Binding b2 = new Binding(); {
b2.Path = new PropertyPath("Range.Max"); Binding b1 = new Binding();
this.SetBinding(SliderCustomEditor.MaximumProperty, b2); b1.Path = new PropertyPath("Range.Min");
this.SetBinding(SliderCustomEditor.MinimumProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Range.Max");
this.SetBinding(SliderCustomEditor.IsEnabledProperty, b3); this.SetBinding(SliderCustomEditor.MaximumProperty, b2);
Binding b4 = new Binding(); Binding b3 = new Binding();
b4.Path = new PropertyPath("Range.Step"); b3.Converter = new IsEnabledEditorConvetrer();
this.SetBinding(SliderCustomEditor.StepFrequencyProperty, b4); b3.Path = new PropertyPath(string.Empty);
this.SetBinding(SliderCustomEditor.IsEnabledProperty, b3);
Binding b5 = new Binding() { Mode = BindingMode.TwoWay };
b5.Path = new PropertyPath("PropertyValue"); Binding b4 = new Binding();
this.SetBinding(SliderCustomEditor.ValueProperty, b5); b4.Path = new PropertyPath("Range.Step");
} this.SetBinding(SliderCustomEditor.StepFrequencyProperty, b4);
}
} Binding b5 = new Binding() { Mode = BindingMode.TwoWay };
b5.Path = new PropertyPath("PropertyValue");
this.SetBinding(SliderCustomEditor.ValueProperty, b5);
}
}
}

Просмотреть файл

@ -1,106 +1,111 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a StringEditor control. /// Represents a StringEditor control.
/// </summary> /// </summary>
public class StringEditor : TextBox, ITypeEditor public class StringEditor : TextBox, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="LabelIconStyle"/> dependency property. /// Identifies the <see cref="LabelIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty LabelIconStyleProperty = public static readonly DependencyProperty LabelIconStyleProperty =
DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(StringEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(StringEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="ErrorIconStyle"/> dependency property. /// Identifies the <see cref="ErrorIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ErrorIconStyleProperty = public static readonly DependencyProperty ErrorIconStyleProperty =
DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(StringEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(StringEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="HasErrors"/> dependency property. /// Identifies the <see cref="HasErrors"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HasErrorsProperty = public static readonly DependencyProperty HasErrorsProperty =
DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(StringEditor), new PropertyMetadata(false)); DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(StringEditor), new PropertyMetadata(false));
/// <summary> /// <summary>
/// Identifies the <see cref="IconDisplayMode"/> dependency property. /// Identifies the <see cref="IconDisplayMode"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty IconDisplayModeProperty = public static readonly DependencyProperty IconDisplayModeProperty =
DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(StringEditor), new PropertyMetadata(EditorIconDisplayMode.None)); DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(StringEditor), new PropertyMetadata(EditorIconDisplayMode.None));
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="StringEditor"/> class. /// Initializes a new instance of the <see cref="StringEditor"/> class.
/// </summary> /// </summary>
public StringEditor() public StringEditor()
{ {
this.DefaultStyleKey = typeof(StringEditor); this.DefaultStyleKey = typeof(StringEditor);
} }
/// <summary> /// <summary>
/// Gets or sets the display mode of the icon for the editor. /// Gets or sets the display mode of the icon for the editor.
/// </summary> /// </summary>
public EditorIconDisplayMode IconDisplayMode public EditorIconDisplayMode IconDisplayMode
{ {
get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); } get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); }
set { this.SetValue(IconDisplayModeProperty, value); } set { this.SetValue(IconDisplayModeProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets a value indicating whether the control has errors. /// Gets or sets a value indicating whether the control has errors.
/// </summary> /// </summary>
public bool HasErrors public bool HasErrors
{ {
get { return (bool)GetValue(HasErrorsProperty); } get { return (bool)GetValue(HasErrorsProperty); }
set { this.SetValue(HasErrorsProperty, value); } set { this.SetValue(HasErrorsProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the label icon of the editor. /// Gets or sets the style for the label icon of the editor.
/// </summary> /// </summary>
public Style LabelIconStyle public Style LabelIconStyle
{ {
get { return (Style)GetValue(LabelIconStyleProperty); } get { return (Style)GetValue(LabelIconStyleProperty); }
set { this.SetValue(LabelIconStyleProperty, value); } set { this.SetValue(LabelIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the error icon of the editor. /// Gets or sets the style for the error icon of the editor.
/// </summary> /// </summary>
public Style ErrorIconStyle public Style ErrorIconStyle
{ {
get { return (Style)GetValue(ErrorIconStyleProperty); } get { return (Style)GetValue(ErrorIconStyleProperty); }
set { this.SetValue(ErrorIconStyleProperty, value); } set { this.SetValue(ErrorIconStyleProperty, value); }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.Text;
public void BindEditor() }
{
Binding b = new Binding() { Mode = BindingMode.TwoWay }; /// <summary>
b.Path = new PropertyPath("PropertyValue"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(StringEditor.TextProperty, b); /// </summary>
public void BindEditor()
Binding b1 = new Binding(); {
b1.Path = new PropertyPath("Errors.Count"); Binding b = new Binding() { Mode = BindingMode.TwoWay };
b1.Converter = new EditorIconVisibilityConverter(); b.Path = new PropertyPath("PropertyValue");
b1.ConverterParameter = "HasErrors"; this.SetBinding(StringEditor.TextProperty, b);
this.SetBinding(StringEditor.HasErrorsProperty, b1);
Binding b1 = new Binding();
Binding b2 = new Binding(); b1.Path = new PropertyPath("Errors.Count");
b2.Path = new PropertyPath("Watermark"); b1.Converter = new EditorIconVisibilityConverter();
this.SetBinding(StringEditor.PlaceholderTextProperty, b2); b1.ConverterParameter = "HasErrors";
this.SetBinding(StringEditor.HasErrorsProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Watermark");
this.SetBinding(StringEditor.IsEnabledProperty, b3); this.SetBinding(StringEditor.PlaceholderTextProperty, b2);
}
} Binding b3 = new Binding();
} b3.Converter = new IsEnabledEditorConvetrer();
b3.Path = new PropertyPath(string.Empty);
this.SetBinding(StringEditor.IsEnabledProperty, b3);
}
}
}

Просмотреть файл

@ -1,154 +1,159 @@
using Telerik.UI.Xaml.Controls.Data.DataForm; using Telerik.UI.Xaml.Controls.Data.DataForm;
using Telerik.UI.Xaml.Controls.Input; using Telerik.UI.Xaml.Controls.Input;
using Telerik.UI.Xaml.Controls.Input.DateTimePickers; using Telerik.UI.Xaml.Controls.Input.DateTimePickers;
using Windows.UI.Xaml; using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls; using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data; using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Media; using Windows.UI.Xaml.Media;
namespace Telerik.UI.Xaml.Controls.Data namespace Telerik.UI.Xaml.Controls.Data
{ {
/// <summary> /// <summary>
/// Represents a TimeEditor control. /// Represents a TimeEditor control.
/// </summary> /// </summary>
public class TimeEditor : RadTimePicker, ITypeEditor public class TimeEditor : RadTimePicker, ITypeEditor, IEditor
{ {
/// <summary> /// <summary>
/// Identifies the <see cref="IconDisplayMode"/> dependency property. /// Identifies the <see cref="IconDisplayMode"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty IconDisplayModeProperty = public static readonly DependencyProperty IconDisplayModeProperty =
DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(TimeEditor), new PropertyMetadata(EditorIconDisplayMode.None)); DependencyProperty.Register(nameof(IconDisplayMode), typeof(EditorIconDisplayMode), typeof(TimeEditor), new PropertyMetadata(EditorIconDisplayMode.None));
/// <summary> /// <summary>
/// Identifies the <see cref="ErrorIconStyle"/> dependency property. /// Identifies the <see cref="ErrorIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty ErrorIconStyleProperty = public static readonly DependencyProperty ErrorIconStyleProperty =
DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(TimeEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(ErrorIconStyle), typeof(Style), typeof(TimeEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="HasErrors"/> dependency property. /// Identifies the <see cref="HasErrors"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HasErrorsProperty = public static readonly DependencyProperty HasErrorsProperty =
DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(TimeEditor), new PropertyMetadata(false)); DependencyProperty.Register(nameof(HasErrors), typeof(bool), typeof(TimeEditor), new PropertyMetadata(false));
/// <summary> /// <summary>
/// Identifies the <see cref="LabelIconStyle"/> dependency property. /// Identifies the <see cref="LabelIconStyle"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty LabelIconStyleProperty = public static readonly DependencyProperty LabelIconStyleProperty =
DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(TimeEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(LabelIconStyle), typeof(Style), typeof(TimeEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="HighlightFillBrush"/> dependency property. /// Identifies the <see cref="HighlightFillBrush"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty HighlightFillBrushProperty = public static readonly DependencyProperty HighlightFillBrushProperty =
DependencyProperty.Register(nameof(HighlightFillBrush), typeof(Brush), typeof(TimeEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(HighlightFillBrush), typeof(Brush), typeof(TimeEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="SelectedBackground"/> dependency property. /// Identifies the <see cref="SelectedBackground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty SelectedBackgroundProperty = public static readonly DependencyProperty SelectedBackgroundProperty =
DependencyProperty.Register(nameof(SelectedBackground), typeof(Brush), typeof(TimeEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(SelectedBackground), typeof(Brush), typeof(TimeEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Identifies the <see cref="SelectedForeground"/> dependency property. /// Identifies the <see cref="SelectedForeground"/> dependency property.
/// </summary> /// </summary>
public static readonly DependencyProperty SelectedForegroundProperty = public static readonly DependencyProperty SelectedForegroundProperty =
DependencyProperty.Register(nameof(SelectedForeground), typeof(Brush), typeof(TimeEditor), new PropertyMetadata(null)); DependencyProperty.Register(nameof(SelectedForeground), typeof(Brush), typeof(TimeEditor), new PropertyMetadata(null));
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="TimeEditor"/> class. /// Initializes a new instance of the <see cref="TimeEditor"/> class.
/// </summary> /// </summary>
public TimeEditor() public TimeEditor()
{ {
this.DefaultStyleKey = typeof(TimeEditor); this.DefaultStyleKey = typeof(TimeEditor);
} }
/// <summary> /// <summary>
/// Gets or sets a value indicating whether the control has errors. /// Gets or sets a value indicating whether the control has errors.
/// </summary> /// </summary>
public bool HasErrors public bool HasErrors
{ {
get { return (bool)GetValue(HasErrorsProperty); } get { return (bool)GetValue(HasErrorsProperty); }
set { this.SetValue(HasErrorsProperty, value); } set { this.SetValue(HasErrorsProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the label icon of the editor. /// Gets or sets the style for the label icon of the editor.
/// </summary> /// </summary>
public Style LabelIconStyle public Style LabelIconStyle
{ {
get { return (Style)GetValue(LabelIconStyleProperty); } get { return (Style)GetValue(LabelIconStyleProperty); }
set { this.SetValue(LabelIconStyleProperty, value); } set { this.SetValue(LabelIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the style for the error icon of the editor. /// Gets or sets the style for the error icon of the editor.
/// </summary> /// </summary>
public Style ErrorIconStyle public Style ErrorIconStyle
{ {
get { return (Style)GetValue(ErrorIconStyleProperty); } get { return (Style)GetValue(ErrorIconStyleProperty); }
set { this.SetValue(ErrorIconStyleProperty, value); } set { this.SetValue(ErrorIconStyleProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the display mode of the icon for the editor. /// Gets or sets the display mode of the icon for the editor.
/// </summary> /// </summary>
public EditorIconDisplayMode IconDisplayMode public EditorIconDisplayMode IconDisplayMode
{ {
get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); } get { return (EditorIconDisplayMode)GetValue(IconDisplayModeProperty); }
set { this.SetValue(IconDisplayModeProperty, value); } set { this.SetValue(IconDisplayModeProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the rectangle area of the <see cref="CheckBox"/> when the control is checked. /// Gets or sets the Background of the rectangle area of the <see cref="CheckBox"/> when the control is checked.
/// </summary> /// </summary>
public Brush HighlightFillBrush public Brush HighlightFillBrush
{ {
get { return (Brush)GetValue(HighlightFillBrushProperty); } get { return (Brush)GetValue(HighlightFillBrushProperty); }
set { this.SetValue(HighlightFillBrushProperty, value); } set { this.SetValue(HighlightFillBrushProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the Background of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected. /// Gets or sets the Background of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected.
/// </summary> /// </summary>
public Brush SelectedBackground public Brush SelectedBackground
{ {
get { return (Brush)GetValue(SelectedBackgroundProperty); } get { return (Brush)GetValue(SelectedBackgroundProperty); }
set { this.SetValue(SelectedBackgroundProperty, value); } set { this.SetValue(SelectedBackgroundProperty, value); }
} }
/// <summary> /// <summary>
/// Gets or sets the Foreground of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected. /// Gets or sets the Foreground of the rectangle area of the <see cref="DateTimeListItem"/> when the item is selected.
/// </summary> /// </summary>
public Brush SelectedForeground public Brush SelectedForeground
{ {
get { return (Brush)GetValue(SelectedForegroundProperty); } get { return (Brush)GetValue(SelectedForegroundProperty); }
set { this.SetValue(SelectedForegroundProperty, value); } set { this.SetValue(SelectedForegroundProperty, value); }
} }
/// <summary> object IEditor.GetCurrentValue()
/// Method used for generating bindings for the <see cref="ITypeEditor"/> properties. {
/// </summary> return this.Value;
public void BindEditor() }
{
Binding b = new Binding() { Mode = BindingMode.TwoWay }; /// <summary>
b.Path = new PropertyPath("PropertyValue"); /// Method used for generating bindings for the <see cref="ITypeEditor"/> properties.
this.SetBinding(TimeEditor.ValueProperty, b); /// </summary>
public void BindEditor()
Binding b1 = new Binding(); {
b1.Path = new PropertyPath("Errors.Count"); Binding b = new Binding() { Mode = BindingMode.TwoWay };
b1.Converter = new EditorIconVisibilityConverter(); b.Path = new PropertyPath("PropertyValue");
b1.ConverterParameter = "HasErrors"; this.SetBinding(TimeEditor.ValueProperty, b);
this.SetBinding(TimeEditor.HasErrorsProperty, b1);
Binding b1 = new Binding();
Binding b2 = new Binding(); b1.Path = new PropertyPath("Errors.Count");
b2.Path = new PropertyPath("Watermark"); b1.Converter = new EditorIconVisibilityConverter();
this.SetBinding(TimeEditor.EmptyContentProperty, b2); b1.ConverterParameter = "HasErrors";
this.SetBinding(TimeEditor.HasErrorsProperty, b1);
Binding b3 = new Binding();
b3.Converter = new IsEnabledEditorConvetrer(); Binding b2 = new Binding();
b3.Path = new PropertyPath(string.Empty); b2.Path = new PropertyPath("Watermark");
this.SetBinding(TimeEditor.IsEnabledProperty, b3); this.SetBinding(TimeEditor.EmptyContentProperty, b2);
}
} Binding b3 = new Binding();
} b3.Converter = new IsEnabledEditorConvetrer();
b3.Path = new PropertyPath(string.Empty);
this.SetBinding(TimeEditor.IsEnabledProperty, b3);
}
}
}

Разница между файлами не показана из-за своего большого размера Загрузить разницу