add HoneycombPanel
This commit is contained in:
1 parent
9856ff1225
commit
9c4fb33c55
29 files changed
+327
-33
No files matched your search
@@ -9,9 +9,6 @@ using HandyControlDemo.Tools;
|
||||
|
||||
namespace HandyControlDemo
|
||||
{
|
||||
/// <summary>
|
||||
/// App.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class App
|
||||
{
|
||||
protected override void OnStartup(StartupEventArgs e)
|
||||
|
||||
@@ -108,6 +108,8 @@
|
||||
|
||||
public static readonly string RunningBlockDemoCtl = nameof(RunningBlockDemoCtl);
|
||||
|
||||
public static readonly string HoneycombPanelDemoCtl = nameof(HoneycombPanelDemoCtl);
|
||||
|
||||
public static readonly string ButtonDemoCtl = nameof(ButtonDemoCtl);
|
||||
|
||||
public static readonly string RepeatButtonDemoCtl = nameof(RepeatButtonDemoCtl);
|
||||
|
||||
@@ -56,7 +56,8 @@ var controlList = new List<string>
|
||||
"CardDemoCtl",
|
||||
"MagnifierDemoCtl",
|
||||
"ImageBlockDemoCtl",
|
||||
"RunningBlockDemoCtl"
|
||||
"RunningBlockDemoCtl",
|
||||
"HoneycombPanelDemoCtl"
|
||||
};
|
||||
var styleList = new List<string>
|
||||
{
|
||||
|
||||
@@ -54,6 +54,9 @@
|
||||
<Compile Include="$(MSBuildThisFileDirectory)UserControl\Controls\CardDemoCtl.xaml.cs">
|
||||
<DependentUpon>CardDemoCtl.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="$(MSBuildThisFileDirectory)UserControl\Controls\HoneycombPanelDemoCtl.xaml.cs">
|
||||
<DependentUpon>HoneycombPanelDemoCtl.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="$(MSBuildThisFileDirectory)UserControl\Controls\ImageBlockDemoCtl.xaml.cs">
|
||||
<DependentUpon>ImageBlockDemoCtl.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -429,6 +432,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="$(MSBuildThisFileDirectory)UserControl\Controls\HoneycombPanelDemoCtl.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="$(MSBuildThisFileDirectory)UserControl\Controls\ImageBlockDemoCtl.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
|
||||
@@ -69,6 +69,15 @@ namespace HandyControlDemo.Properties.Langs {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找类似 添加项 的本地化字符串。
|
||||
/// </summary>
|
||||
public static string AddItem {
|
||||
get {
|
||||
return ResourceManager.GetString("AddItem", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找类似 动画路径 的本地化字符串。
|
||||
/// </summary>
|
||||
@@ -672,6 +681,15 @@ namespace HandyControlDemo.Properties.Langs {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找类似 蜂窝布局 的本地化字符串。
|
||||
/// </summary>
|
||||
public static string HoneycombPanel {
|
||||
get {
|
||||
return ResourceManager.GetString("HoneycombPanel", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找类似 混合布局 的本地化字符串。
|
||||
/// </summary>
|
||||
@@ -1185,6 +1203,15 @@ namespace HandyControlDemo.Properties.Langs {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找类似 删除项 的本地化字符串。
|
||||
/// </summary>
|
||||
public static string RemoveItem {
|
||||
get {
|
||||
return ResourceManager.GetString("RemoveItem", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 查找类似 重复按钮 的本地化字符串。
|
||||
/// </summary>
|
||||
|
||||
@@ -636,4 +636,13 @@
|
||||
<data name="RunningBlock" xml:space="preserve">
|
||||
<value>RunningBlock</value>
|
||||
</data>
|
||||
<data name="HoneycombPanel" xml:space="preserve">
|
||||
<value>HoneycombPanel</value>
|
||||
</data>
|
||||
<data name="AddItem" xml:space="preserve">
|
||||
<value>Add an item</value>
|
||||
</data>
|
||||
<data name="RemoveItem" xml:space="preserve">
|
||||
<value>Remove an item</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -636,4 +636,13 @@
|
||||
<data name="RunningBlock" xml:space="preserve">
|
||||
<value>滚动块</value>
|
||||
</data>
|
||||
<data name="HoneycombPanel" xml:space="preserve">
|
||||
<value>蜂窝布局</value>
|
||||
</data>
|
||||
<data name="AddItem" xml:space="preserve">
|
||||
<value>添加项</value>
|
||||
</data>
|
||||
<data name="RemoveItem" xml:space="preserve">
|
||||
<value>删除项</value>
|
||||
</data>
|
||||
</root>
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 338 B |
@@ -157,9 +157,9 @@ namespace HandyControlDemo.Service
|
||||
};
|
||||
}
|
||||
|
||||
internal List<CardModel> GetCardDataList()
|
||||
internal ObservableCollection<CardModel> GetCardDataList()
|
||||
{
|
||||
return new List<CardModel>
|
||||
return new ObservableCollection<CardModel>
|
||||
{
|
||||
new CardModel
|
||||
{
|
||||
@@ -224,6 +224,14 @@ namespace HandyControlDemo.Service
|
||||
};
|
||||
}
|
||||
|
||||
internal CardModel GetCardData()
|
||||
{
|
||||
return new CardModel
|
||||
{
|
||||
Content = $"/HandyControlDemo;component/Resources/Img/Album/{DateTime.Now.Second % 10 + 1}.jpg"
|
||||
};
|
||||
}
|
||||
|
||||
internal List<StepBarDemoModel> GetStepBarDemoDataList()
|
||||
{
|
||||
return new List<StepBarDemoModel>
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// GrowlDemoGrid.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class GrowlDemoCtl
|
||||
{
|
||||
public GrowlDemoCtl()
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
<UserControl x:Class="HandyControlDemo.UserControl.HoneycombPanelDemoCtl"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:hc="https://handyorg.github.io/handycontrol"
|
||||
xmlns:langs="clr-namespace:HandyControlDemo.Properties.Langs"
|
||||
DataContext="{Binding CardDemo,Source={StaticResource Locator}}"
|
||||
Background="{DynamicResource RegionBrush}">
|
||||
<hc:TransitioningContentControl>
|
||||
<Grid Margin="32">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition/>
|
||||
</Grid.RowDefinitions>
|
||||
<hc:ButtonGroup Margin="0,0,0,16">
|
||||
<Button Command="{Binding AddItemCmd}" Content="{x:Static langs:Lang.AddItem}"/>
|
||||
<Button Command="{Binding RemoveItemCmd}" Content="{x:Static langs:Lang.RemoveItem}"/>
|
||||
</hc:ButtonGroup>
|
||||
<Border Padding="0" Grid.Row="1" Style="{StaticResource BorderRegion}">
|
||||
<ListBox Background="Transparent" BorderThickness="0" Style="{StaticResource ListBoxCustom}" ItemsSource="{Binding DataList}">
|
||||
<ListBox.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<hc:HoneycombPanel hc:PanelElement.FluidMoveBehavior="{StaticResource BehaviorXY200}"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ListBox.ItemsPanel>
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate DataType="data:CardModel">
|
||||
<hc:Gravatar Style="{StaticResource GravatarCircle}" Margin="10" Source="{Binding Content}"/>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
</Border>
|
||||
</Grid>
|
||||
</hc:TransitioningContentControl>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
public partial class HoneycombPanelDemoCtl
|
||||
{
|
||||
public HoneycombPanelDemoCtl()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,6 @@
|
||||
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// ImageBrowserDemoCtl.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class ImageBrowserDemoCtl
|
||||
{
|
||||
public ImageBrowserDemoCtl()
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// StepBarDemoCtl.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class StepBarDemoCtl
|
||||
{
|
||||
public StepBarDemoCtl()
|
||||
|
||||
@@ -220,7 +220,7 @@
|
||||
<Image Source="../../Resources/Img/LeftMainContent/GoToTop_16x.png"/>
|
||||
</hc:EdgeElement.LeftContent>
|
||||
</ListBoxItem>
|
||||
<ListBoxItem Style="{StaticResource ListBoxItemNew}" Tag="{x:Static data:MessageToken.ButtonGroupDemoCtl}" Content="{x:Static langs:Lang.ButtonGroup}">
|
||||
<ListBoxItem Tag="{x:Static data:MessageToken.ButtonGroupDemoCtl}" Content="{x:Static langs:Lang.ButtonGroup}">
|
||||
<hc:EdgeElement.LeftContent>
|
||||
<Image Source="../../Resources/Img/LeftMainContent/ButtonGroup_16x.png"/>
|
||||
</hc:EdgeElement.LeftContent>
|
||||
@@ -350,6 +350,11 @@
|
||||
<Image Source="../../Resources/Img/LeftMainContent/Panel_16x.png"/>
|
||||
</hc:EdgeElement.LeftContent>
|
||||
</ListBoxItem>
|
||||
<ListBoxItem Style="{StaticResource ListBoxItemNew}" Tag="{x:Static data:MessageToken.HoneycombPanelDemoCtl}" Content="{x:Static langs:Lang.HoneycombPanel}">
|
||||
<hc:EdgeElement.LeftContent>
|
||||
<Image Source="../../Resources/Img/LeftMainContent/PolygonHexagon_16x.png"/>
|
||||
</hc:EdgeElement.LeftContent>
|
||||
</ListBoxItem>
|
||||
<ListBoxItem Tag="{x:Static data:MessageToken.CoverViewDemoCtl}" Content="{x:Static langs:Lang.CoverView}">
|
||||
<hc:EdgeElement.LeftContent>
|
||||
<Image Source="../../Resources/Img/LeftMainContent/DetailDataView_16x.png"/>
|
||||
|
||||
@@ -2,9 +2,6 @@
|
||||
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// ExpanderDemoCtl.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class ExpanderDemoCtl
|
||||
{
|
||||
public ExpanderDemoCtl()
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// TextBlockDemoCtl.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class TextBlockDemoCtl
|
||||
{
|
||||
public TextBlockDemoCtl()
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
|
||||
namespace HandyControlDemo.UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// ToggleButtonDemoCtl.xaml 的交互逻辑
|
||||
/// </summary>
|
||||
public partial class ToggleButtonDemoCtl
|
||||
{
|
||||
public ToggleButtonDemoCtl()
|
||||
|
||||
@@ -1,13 +1,34 @@
|
||||
using HandyControlDemo.Data;
|
||||
using System;
|
||||
#if netle40
|
||||
using GalaSoft.MvvmLight.Command;
|
||||
#else
|
||||
using GalaSoft.MvvmLight.CommandWpf;
|
||||
#endif
|
||||
using HandyControlDemo.Data;
|
||||
using HandyControlDemo.Service;
|
||||
|
||||
namespace HandyControlDemo.ViewModel
|
||||
{
|
||||
public class CardDemoViewModel : DemoViewModelBase<CardModel>
|
||||
{
|
||||
private readonly DataService _dataService;
|
||||
|
||||
public CardDemoViewModel(DataService dataService)
|
||||
{
|
||||
_dataService = dataService;
|
||||
DataList = dataService.GetCardDataList();
|
||||
}
|
||||
|
||||
public RelayCommand AddItemCmd => new Lazy<RelayCommand>(() =>
|
||||
new RelayCommand(() => DataList.Insert(0, _dataService.GetCardData()))).Value;
|
||||
|
||||
public RelayCommand RemoveItemCmd => new Lazy<RelayCommand>(() =>
|
||||
new RelayCommand(() =>
|
||||
{
|
||||
if (DataList.Count > 0)
|
||||
{
|
||||
DataList.RemoveAt(0);
|
||||
}
|
||||
})).Value;
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,7 @@ namespace HandyControlDemo.ViewModel
|
||||
{
|
||||
public class MainViewModel : DemoViewModelBase<DemoDataModel>
|
||||
{
|
||||
#region 字段
|
||||
#region 字段
|
||||
|
||||
/// <summary>
|
||||
/// 内容标题
|
||||
@@ -33,7 +33,7 @@ namespace HandyControlDemo.ViewModel
|
||||
/// </summary>
|
||||
private ListBoxItem _listBoxItemCurrent;
|
||||
|
||||
#endregion
|
||||
#endregion
|
||||
|
||||
public MainViewModel(DataService dataService)
|
||||
{
|
||||
@@ -54,7 +54,7 @@ namespace HandyControlDemo.ViewModel
|
||||
DataList = dataService.GetDemoDataList();
|
||||
}
|
||||
|
||||
#region 属性
|
||||
#region 属性
|
||||
|
||||
/// <summary>
|
||||
/// 子内容
|
||||
@@ -84,7 +84,7 @@ namespace HandyControlDemo.ViewModel
|
||||
|
||||
#endregion
|
||||
|
||||
#region 命令
|
||||
#region 命令
|
||||
|
||||
/// <summary>
|
||||
/// 切换例子命令
|
||||
|
||||
@@ -88,7 +88,7 @@ namespace HandyControlDemo.ViewModel
|
||||
|
||||
public NoUserViewModel NoUser => ServiceLocator.Current.GetInstance<NoUserViewModel>();
|
||||
|
||||
public CardDemoViewModel CardDemo => ServiceLocator.Current.GetInstance<CardDemoViewModel>();
|
||||
public CardDemoViewModel CardDemo => new CardDemoViewModel(ServiceLocator.Current.GetInstance<DataService>());
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user