V3.0.4
This commit is contained in:
parent
c9d2668fd6
commit
b78e3e7225
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -6,36 +6,36 @@
|
|||||||
"compilationOptions": {},
|
"compilationOptions": {},
|
||||||
"targets": {
|
"targets": {
|
||||||
".NETCoreApp,Version=v5.0": {
|
".NETCoreApp,Version=v5.0": {
|
||||||
"SunnyUI/3.0.3": {
|
"SunnyUI/3.0.4": {
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"SunnyUI.Common": "3.0.3"
|
"SunnyUI.Common": "3.0.4"
|
||||||
},
|
},
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"SunnyUI.dll": {}
|
"SunnyUI.dll": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"SunnyUI.Common/3.0.3": {
|
"SunnyUI.Common/3.0.4": {
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"lib/net5.0/SunnyUI.Common.dll": {
|
"lib/net5.0/SunnyUI.Common.dll": {
|
||||||
"assemblyVersion": "3.0.3.0",
|
"assemblyVersion": "3.0.4.0",
|
||||||
"fileVersion": "3.0.3.0"
|
"fileVersion": "3.0.4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"libraries": {
|
"libraries": {
|
||||||
"SunnyUI/3.0.3": {
|
"SunnyUI/3.0.4": {
|
||||||
"type": "project",
|
"type": "project",
|
||||||
"serviceable": false,
|
"serviceable": false,
|
||||||
"sha512": ""
|
"sha512": ""
|
||||||
},
|
},
|
||||||
"SunnyUI.Common/3.0.3": {
|
"SunnyUI.Common/3.0.4": {
|
||||||
"type": "package",
|
"type": "package",
|
||||||
"serviceable": true,
|
"serviceable": true,
|
||||||
"sha512": "sha512-l1LSJK1mnk/GKQzKDFi3mKf9T+l+TEEerKU0zcEjkPfA2i3Y3UfAAcSRYfjxah8+DSsL3UVghKPEXYYFnhfk5Q==",
|
"sha512": "sha512-eFd9v+FBd6+pkdjFIOx2SWXmifFmYh9RL8wgrtt3A4Q81uCo7NNiYYJys/YIcpxQReObOWmJ1h/3vZCD3sfnlA==",
|
||||||
"path": "sunnyui.common/3.0.3",
|
"path": "sunnyui.common/3.0.4",
|
||||||
"hashPath": "sunnyui.common.3.0.3.nupkg.sha512"
|
"hashPath": "sunnyui.common.3.0.4.nupkg.sha512"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Binary file not shown.
Binary file not shown.
@ -6,36 +6,36 @@
|
|||||||
"compilationOptions": {},
|
"compilationOptions": {},
|
||||||
"targets": {
|
"targets": {
|
||||||
".NETCoreApp,Version=v3.1": {
|
".NETCoreApp,Version=v3.1": {
|
||||||
"SunnyUI/3.0.3": {
|
"SunnyUI/3.0.4": {
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"SunnyUI.Common": "3.0.3"
|
"SunnyUI.Common": "3.0.4"
|
||||||
},
|
},
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"SunnyUI.dll": {}
|
"SunnyUI.dll": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"SunnyUI.Common/3.0.3": {
|
"SunnyUI.Common/3.0.4": {
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"lib/netcoreapp3.1/SunnyUI.Common.dll": {
|
"lib/netcoreapp3.1/SunnyUI.Common.dll": {
|
||||||
"assemblyVersion": "3.0.3.0",
|
"assemblyVersion": "3.0.4.0",
|
||||||
"fileVersion": "3.0.3.0"
|
"fileVersion": "3.0.4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"libraries": {
|
"libraries": {
|
||||||
"SunnyUI/3.0.3": {
|
"SunnyUI/3.0.4": {
|
||||||
"type": "project",
|
"type": "project",
|
||||||
"serviceable": false,
|
"serviceable": false,
|
||||||
"sha512": ""
|
"sha512": ""
|
||||||
},
|
},
|
||||||
"SunnyUI.Common/3.0.3": {
|
"SunnyUI.Common/3.0.4": {
|
||||||
"type": "package",
|
"type": "package",
|
||||||
"serviceable": true,
|
"serviceable": true,
|
||||||
"sha512": "sha512-l1LSJK1mnk/GKQzKDFi3mKf9T+l+TEEerKU0zcEjkPfA2i3Y3UfAAcSRYfjxah8+DSsL3UVghKPEXYYFnhfk5Q==",
|
"sha512": "sha512-eFd9v+FBd6+pkdjFIOx2SWXmifFmYh9RL8wgrtt3A4Q81uCo7NNiYYJys/YIcpxQReObOWmJ1h/3vZCD3sfnlA==",
|
||||||
"path": "sunnyui.common/3.0.3",
|
"path": "sunnyui.common/3.0.4",
|
||||||
"hashPath": "sunnyui.common.3.0.3.nupkg.sha512"
|
"hashPath": "sunnyui.common.3.0.4.nupkg.sha512"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Binary file not shown.
@ -94,7 +94,7 @@ namespace Sunny.UI.Demo
|
|||||||
|
|
||||||
private void 关于ToolStripMenuItem1_Click(object sender, EventArgs e)
|
private void 关于ToolStripMenuItem1_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
UIMessageBox.Show("SunnyUI.Net V3.0", "关于", Style, UIMessageBoxButtons.OK, false);
|
UIMessageBox.Show(Version, "关于", Style, UIMessageBoxButtons.OK, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void 关于ToolStripMenuItem_Click(object sender, EventArgs e)
|
private void 关于ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
|||||||
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
|
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
|
||||||
//通过使用 "*",如下所示:
|
//通过使用 "*",如下所示:
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
[assembly: AssemblyVersion("3.0.3.0")]
|
[assembly: AssemblyVersion("3.0.4.0")]
|
||||||
[assembly: AssemblyFileVersion("3.0.3.0")]
|
[assembly: AssemblyFileVersion("3.0.4.0")]
|
||||||
|
@ -35,11 +35,11 @@
|
|||||||
<ApplicationIcon>SunnyUI.ico</ApplicationIcon>
|
<ApplicationIcon>SunnyUI.ico</ApplicationIcon>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="SunnyUI, Version=3.0.3.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="SunnyUI, Version=3.0.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\Bin\net40\SunnyUI.dll</HintPath>
|
<HintPath>..\Bin\net40\SunnyUI.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="SunnyUI.Common, Version=3.0.3.0, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="SunnyUI.Common, Version=3.0.4.0, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\Bin\net40\SunnyUI.Common.dll</HintPath>
|
<HintPath>..\Bin\net40\SunnyUI.Common.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
2
SunnyUI/Properties/Resources.Designer.cs
generated
2
SunnyUI/Properties/Resources.Designer.cs
generated
@ -200,7 +200,7 @@ namespace Sunny.UI.Properties {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 查找类似 V3.0.3 的本地化字符串。
|
/// 查找类似 V3.0.4 的本地化字符串。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string Version {
|
internal static string Version {
|
||||||
get {
|
get {
|
||||||
|
@ -162,8 +162,8 @@
|
|||||||
<value>..\Resources\notifier.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>..\Resources\notifier.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Version" xml:space="preserve">
|
<data name="Version" xml:space="preserve">
|
||||||
<value>V3.0.3</value>
|
<value>V3.0.4</value>
|
||||||
<comment>2021-04-11</comment>
|
<comment>2021-05-20</comment>
|
||||||
</data>
|
</data>
|
||||||
<data name="wind" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
<data name="wind" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
<value>..\Resources\wind.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
<value>..\Resources\wind.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
<Description>SunnyUI.Net 是基于.Net Framework 4.0+、.Net Core3.1、.Net 5 框架的 C# WinForm 开源控件库、工具类库、扩展类库、多页面开发框架。</Description>
|
<Description>SunnyUI.Net 是基于.Net Framework 4.0+、.Net Core3.1、.Net 5 框架的 C# WinForm 开源控件库、工具类库、扩展类库、多页面开发框架。</Description>
|
||||||
<Copyright>CopyRight © SunnyUI.Net 2012-2021</Copyright>
|
<Copyright>CopyRight © SunnyUI.Net 2012-2021</Copyright>
|
||||||
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
<PackageLicenseFile>LICENSE</PackageLicenseFile>
|
||||||
<Version>3.0.3</Version>
|
<Version>3.0.4</Version>
|
||||||
<Authors>ShenYonghua</Authors>
|
<Authors>ShenYonghua</Authors>
|
||||||
<Company>SunnyUI.Net</Company>
|
<Company>SunnyUI.Net</Company>
|
||||||
<PackageId>SunnyUI</PackageId>
|
<PackageId>SunnyUI</PackageId>
|
||||||
@ -57,7 +57,7 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="SunnyUI.Common" Version="3.0.3" />
|
<PackageReference Include="SunnyUI.Common" Version="3.0.4" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(TargetFramework)' == 'net40'">
|
<ItemGroup Condition="'$(TargetFramework)' == 'net40'">
|
||||||
|
@ -1,188 +0,0 @@
|
|||||||
/******************************************************************************
|
|
||||||
* SunnyUI 开源控件库、工具类库、扩展类库、多页面开发框架。
|
|
||||||
* CopyRight (C) 2012-2021 ShenYongHua(沈永华).
|
|
||||||
* QQ群:56829229 QQ:17612584 EMail:SunnyUI@QQ.Com
|
|
||||||
*
|
|
||||||
* Blog: https://www.cnblogs.com/yhuse
|
|
||||||
* Gitee: https://gitee.com/yhuse/SunnyUI
|
|
||||||
* GitHub: https://github.com/yhuse/SunnyUI
|
|
||||||
*
|
|
||||||
* SunnyUI.dll can be used for free under the GPL-3.0 license.
|
|
||||||
* If you use this code, please keep this note.
|
|
||||||
* 如果您使用此代码,请保留此说明。
|
|
||||||
******************************************************************************
|
|
||||||
* 文件名称: UIObjectCollection.cs
|
|
||||||
* 文件说明: 带集合个数改变事件的对象集合类
|
|
||||||
* 当前版本: V3.0
|
|
||||||
* 创建日期: 2021-05-19
|
|
||||||
*
|
|
||||||
* 2021-05-19: V3.0.3 增加文件说明
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace Sunny.UI
|
|
||||||
{
|
|
||||||
[Serializable]
|
|
||||||
public class UIObjectCollection : IList
|
|
||||||
{
|
|
||||||
private ArrayList data = new ArrayList();
|
|
||||||
|
|
||||||
public event EventHandler CountChange;
|
|
||||||
|
|
||||||
public object this[int index]
|
|
||||||
{
|
|
||||||
get => data[index];
|
|
||||||
set => data[index] = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int Count => data.Count;
|
|
||||||
|
|
||||||
bool IList.IsReadOnly => false;
|
|
||||||
|
|
||||||
bool IList.IsFixedSize => false;
|
|
||||||
|
|
||||||
public int Add(object value)
|
|
||||||
{
|
|
||||||
int count = data.Add(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void AddRange(object[] value)
|
|
||||||
{
|
|
||||||
if (value == null)
|
|
||||||
{
|
|
||||||
throw new ArgumentNullException("value is null");
|
|
||||||
}
|
|
||||||
|
|
||||||
data.AddRange(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Clear()
|
|
||||||
{
|
|
||||||
data.Clear();
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool Contains(object value)
|
|
||||||
{
|
|
||||||
return data.Contains(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void CopyTo(object[] array, int index)
|
|
||||||
{
|
|
||||||
data.CopyTo(array, index);
|
|
||||||
}
|
|
||||||
|
|
||||||
public UIObjectEnumerator GetEnumerator()
|
|
||||||
{
|
|
||||||
return new UIObjectEnumerator(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int IndexOf(object value)
|
|
||||||
{
|
|
||||||
return data.IndexOf(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Insert(int index, object value)
|
|
||||||
{
|
|
||||||
data.Insert(index, value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool IsReadOnly => false;
|
|
||||||
|
|
||||||
public bool IsSynchronized => false;
|
|
||||||
|
|
||||||
public void Remove(object value)
|
|
||||||
{
|
|
||||||
data.Remove(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
public void RemoveAt(int index)
|
|
||||||
{
|
|
||||||
data.RemoveAt(index);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
public object SyncRoot => data.SyncRoot;
|
|
||||||
|
|
||||||
object IList.this[int index]
|
|
||||||
{
|
|
||||||
get => this[index];
|
|
||||||
set => this[index] = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
int IList.Add(object value)
|
|
||||||
{
|
|
||||||
int count = Add(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool IList.Contains(object value)
|
|
||||||
{
|
|
||||||
return Contains(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int IList.IndexOf(object value)
|
|
||||||
{
|
|
||||||
return IndexOf(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
void IList.Insert(int index, object value)
|
|
||||||
{
|
|
||||||
Insert(index, value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
void IList.Remove(object value)
|
|
||||||
{
|
|
||||||
Remove(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
void ICollection.CopyTo(Array array, int index)
|
|
||||||
{
|
|
||||||
data.CopyTo(array, index);
|
|
||||||
}
|
|
||||||
|
|
||||||
IEnumerator IEnumerable.GetEnumerator()
|
|
||||||
{
|
|
||||||
return data.GetEnumerator();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>[To be supplied.]</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public class UIObjectEnumerator
|
|
||||||
{
|
|
||||||
private readonly IEnumerator baseEnumerator;
|
|
||||||
private readonly IEnumerable temp;
|
|
||||||
|
|
||||||
internal UIObjectEnumerator(UIObjectCollection mappings)
|
|
||||||
{
|
|
||||||
this.temp = (IEnumerable)(mappings);
|
|
||||||
this.baseEnumerator = temp.GetEnumerator();
|
|
||||||
}
|
|
||||||
|
|
||||||
public object Current => baseEnumerator.Current;
|
|
||||||
|
|
||||||
public bool MoveNext()
|
|
||||||
{
|
|
||||||
return baseEnumerator.MoveNext();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Reset()
|
|
||||||
{
|
|
||||||
baseEnumerator.Reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,258 +0,0 @@
|
|||||||
/******************************************************************************
|
|
||||||
* SunnyUI 开源控件库、工具类库、扩展类库、多页面开发框架。
|
|
||||||
* CopyRight (C) 2012-2021 ShenYongHua(沈永华).
|
|
||||||
* QQ群:56829229 QQ:17612584 EMail:SunnyUI@QQ.Com
|
|
||||||
*
|
|
||||||
* Blog: https://www.cnblogs.com/yhuse
|
|
||||||
* Gitee: https://gitee.com/yhuse/SunnyUI
|
|
||||||
* GitHub: https://github.com/yhuse/SunnyUI
|
|
||||||
*
|
|
||||||
* SunnyUI.dll can be used for free under the GPL-3.0 license.
|
|
||||||
* If you use this code, please keep this note.
|
|
||||||
* 如果您使用此代码,请保留此说明。
|
|
||||||
******************************************************************************
|
|
||||||
* 文件名称: UIStringCollection.cs
|
|
||||||
* 文件说明: 带集合个数改变事件的字符串集合类
|
|
||||||
* 当前版本: V3.0
|
|
||||||
* 创建日期: 2021-05-19
|
|
||||||
*
|
|
||||||
* 2021-05-19: V3.0.3 增加文件说明
|
|
||||||
******************************************************************************/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
|
|
||||||
namespace Sunny.UI
|
|
||||||
{
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Represents a collection of strings.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
[Serializable]
|
|
||||||
public class UIStringCollection : IList
|
|
||||||
{
|
|
||||||
private ArrayList data = new ArrayList();
|
|
||||||
|
|
||||||
public event EventHandler CountChange;
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Represents the entry at the specified index of the <see cref='System.Collections.Specialized.StringCollection'/>.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public string this[int index]
|
|
||||||
{
|
|
||||||
get => (string)data[index];
|
|
||||||
set => data[index] = value;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Gets the number of strings in the
|
|
||||||
/// <see cref='System.Collections.Specialized.StringCollection'/> .</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public int Count => data.Count;
|
|
||||||
|
|
||||||
bool IList.IsReadOnly => false;
|
|
||||||
|
|
||||||
bool IList.IsFixedSize => false;
|
|
||||||
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Adds a string with the specified value to the
|
|
||||||
/// <see cref='System.Collections.Specialized.StringCollection'/> .</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public int Add(string value)
|
|
||||||
{
|
|
||||||
int count = data.Add(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Copies the elements of a string array to the end of the <see cref='System.Collections.Specialized.StringCollection'/>.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void AddRange(string[] value)
|
|
||||||
{
|
|
||||||
if (value == null)
|
|
||||||
{
|
|
||||||
throw new ArgumentNullException("value");
|
|
||||||
}
|
|
||||||
|
|
||||||
data.AddRange(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Removes all the strings from the
|
|
||||||
/// <see cref='System.Collections.Specialized.StringCollection'/> .</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void Clear()
|
|
||||||
{
|
|
||||||
data.Clear();
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Gets a value indicating whether the
|
|
||||||
/// <see cref='System.Collections.Specialized.StringCollection'/> contains a string with the specified
|
|
||||||
/// value.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public bool Contains(string value)
|
|
||||||
{
|
|
||||||
return data.Contains(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Copies the <see cref='System.Collections.Specialized.StringCollection'/> values to a one-dimensional <see cref='System.Array'/> instance at the
|
|
||||||
/// specified index.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void CopyTo(string[] array, int index)
|
|
||||||
{
|
|
||||||
data.CopyTo(array, index);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Returns an enumerator that can iterate through
|
|
||||||
/// the <see cref='System.Collections.Specialized.StringCollection'/> .</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public UIStringEnumerator GetEnumerator()
|
|
||||||
{
|
|
||||||
return new UIStringEnumerator(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Returns the index of the first occurrence of a string in
|
|
||||||
/// the <see cref='System.Collections.Specialized.StringCollection'/> .</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public int IndexOf(string value)
|
|
||||||
{
|
|
||||||
return data.IndexOf(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Inserts a string into the <see cref='System.Collections.Specialized.StringCollection'/> at the specified
|
|
||||||
/// index.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void Insert(int index, string value)
|
|
||||||
{
|
|
||||||
data.Insert(index, value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Gets a value indicating whether the <see cref='System.Collections.Specialized.StringCollection'/> is read-only.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public bool IsReadOnly => false;
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Gets a value indicating whether access to the
|
|
||||||
/// <see cref='System.Collections.Specialized.StringCollection'/>
|
|
||||||
/// is synchronized (thread-safe).</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public bool IsSynchronized => false;
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para> Removes a specific string from the
|
|
||||||
/// <see cref='System.Collections.Specialized.StringCollection'/> .</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void Remove(string value)
|
|
||||||
{
|
|
||||||
data.Remove(value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Removes the string at the specified index of the <see cref='System.Collections.Specialized.StringCollection'/>.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void RemoveAt(int index)
|
|
||||||
{
|
|
||||||
data.RemoveAt(index);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>Gets an object that can be used to synchronize access to the <see cref='System.Collections.Specialized.StringCollection'/>.</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public object SyncRoot => data.SyncRoot;
|
|
||||||
|
|
||||||
object IList.this[int index]
|
|
||||||
{
|
|
||||||
get => this[index];
|
|
||||||
set => this[index] = (string)value;
|
|
||||||
}
|
|
||||||
|
|
||||||
int IList.Add(object value)
|
|
||||||
{
|
|
||||||
int count = Add((string)value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool IList.Contains(object value)
|
|
||||||
{
|
|
||||||
return Contains((string)value);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
int IList.IndexOf(object value)
|
|
||||||
{
|
|
||||||
return IndexOf((string)value);
|
|
||||||
}
|
|
||||||
|
|
||||||
void IList.Insert(int index, object value)
|
|
||||||
{
|
|
||||||
Insert(index, (string)value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
void IList.Remove(object value)
|
|
||||||
{
|
|
||||||
Remove((string)value);
|
|
||||||
CountChange?.Invoke(this, new EventArgs());
|
|
||||||
}
|
|
||||||
|
|
||||||
void ICollection.CopyTo(Array array, int index)
|
|
||||||
{
|
|
||||||
data.CopyTo(array, index);
|
|
||||||
}
|
|
||||||
|
|
||||||
IEnumerator IEnumerable.GetEnumerator()
|
|
||||||
{
|
|
||||||
return data.GetEnumerator();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>[To be supplied.]</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public class UIStringEnumerator
|
|
||||||
{
|
|
||||||
private readonly IEnumerator baseEnumerator;
|
|
||||||
private readonly IEnumerable temp;
|
|
||||||
|
|
||||||
internal UIStringEnumerator(UIStringCollection mappings)
|
|
||||||
{
|
|
||||||
this.temp = (IEnumerable)(mappings);
|
|
||||||
this.baseEnumerator = temp.GetEnumerator();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>[To be supplied.]</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public string Current => (string)(baseEnumerator.Current);
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>[To be supplied.]</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public bool MoveNext()
|
|
||||||
{
|
|
||||||
return baseEnumerator.MoveNext();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <devdoc>
|
|
||||||
/// <para>[To be supplied.]</para>
|
|
||||||
/// </devdoc>
|
|
||||||
public void Reset()
|
|
||||||
{
|
|
||||||
baseEnumerator.Reset();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
135
SunnyUI/Units/ULocalize.cs
Normal file
135
SunnyUI/Units/ULocalize.cs
Normal file
@ -0,0 +1,135 @@
|
|||||||
|
/******************************************************************************
|
||||||
|
* SunnyUI 开源控件库、工具类库、扩展类库、多页面开发框架。
|
||||||
|
* CopyRight (C) 2012-2021 ShenYongHua(沈永华).
|
||||||
|
* QQ群:56829229 QQ:17612584 EMail:SunnyUI@QQ.Com
|
||||||
|
*
|
||||||
|
* Blog: https://www.cnblogs.com/yhuse
|
||||||
|
* Gitee: https://gitee.com/yhuse/SunnyUI
|
||||||
|
* GitHub: https://github.com/yhuse/SunnyUI
|
||||||
|
*
|
||||||
|
* SunnyUI.Common.dll can be used for free under the MIT license.
|
||||||
|
* If you use this code, please keep this note.
|
||||||
|
* 如果您使用此代码,请保留此说明。
|
||||||
|
******************************************************************************
|
||||||
|
* 文件名称: UIFormHelper.cs
|
||||||
|
* 文件说明: 多语言字符串定义
|
||||||
|
* 当前版本: V3.0
|
||||||
|
* 创建日期: 2020-01-01
|
||||||
|
*
|
||||||
|
* 2020-04-19: V2.2 增加文件说明
|
||||||
|
******************************************************************************/
|
||||||
|
|
||||||
|
namespace Sunny.UI
|
||||||
|
{
|
||||||
|
public static class UILocalize
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 提示
|
||||||
|
/// </summary>
|
||||||
|
public static string InfoTitle = "提示";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 正确
|
||||||
|
/// </summary>
|
||||||
|
public static string SuccessTitle = "正确";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 警告
|
||||||
|
/// </summary>
|
||||||
|
public static string WarningTitle = "警告";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 错误
|
||||||
|
/// </summary>
|
||||||
|
public static string ErrorTitle = "错误";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 提示
|
||||||
|
/// </summary>
|
||||||
|
public static string AskTitle = "提示";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 输入
|
||||||
|
/// </summary>
|
||||||
|
public static string InputTitle = "输入";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 选择
|
||||||
|
/// </summary>
|
||||||
|
public static string SelectTitle = "选择";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 全部关闭
|
||||||
|
/// </summary>
|
||||||
|
public static string CloseAll = "全部关闭";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 确定
|
||||||
|
/// </summary>
|
||||||
|
public static string OK = "确定";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 取消
|
||||||
|
/// </summary>
|
||||||
|
public static string Cancel = "取消";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// [ 无数据 ]
|
||||||
|
/// </summary>
|
||||||
|
public static string GridNoData = "[ 无数据 ]";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 数据加载中,请稍候...
|
||||||
|
/// </summary>
|
||||||
|
public static string GridDataLoading = "数据加载中,请稍候...";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 数据源必须为DataTable或者List
|
||||||
|
/// </summary>
|
||||||
|
public static string GridDataSourceException = "数据源必须为DataTable或者List";
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// "系统正在处理中,请稍候..."
|
||||||
|
/// </summary>
|
||||||
|
public static string SystemProcessing = "系统正在处理中,请稍候...";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class UILocalizeHelper
|
||||||
|
{
|
||||||
|
public static void SetEN()
|
||||||
|
{
|
||||||
|
UILocalize.InfoTitle = "Info";
|
||||||
|
UILocalize.SuccessTitle = "Success";
|
||||||
|
UILocalize.WarningTitle = "Warning";
|
||||||
|
UILocalize.ErrorTitle = "Error";
|
||||||
|
UILocalize.AskTitle = "Query";
|
||||||
|
UILocalize.InputTitle = "Input";
|
||||||
|
UILocalize.SelectTitle = "Select";
|
||||||
|
UILocalize.CloseAll = "Close all";
|
||||||
|
UILocalize.OK = "OK";
|
||||||
|
UILocalize.Cancel = "Cancel";
|
||||||
|
UILocalize.GridNoData = "[ No data ]";
|
||||||
|
UILocalize.GridDataLoading = "Data loading, please wait...";
|
||||||
|
UILocalize.GridDataSourceException = "The data source must be DataTable or List";
|
||||||
|
UILocalize.SystemProcessing = "The system is processing, please wait...";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void SetCH()
|
||||||
|
{
|
||||||
|
UILocalize.InfoTitle = "提示";
|
||||||
|
UILocalize.SuccessTitle = "正确";
|
||||||
|
UILocalize.WarningTitle = "警告";
|
||||||
|
UILocalize.ErrorTitle = "错误";
|
||||||
|
UILocalize.AskTitle = "提示";
|
||||||
|
UILocalize.InputTitle = "输入";
|
||||||
|
UILocalize.SelectTitle = "选择";
|
||||||
|
UILocalize.CloseAll = "全部关闭";
|
||||||
|
UILocalize.OK = "确定";
|
||||||
|
UILocalize.Cancel = "取消";
|
||||||
|
UILocalize.GridNoData = "[ 无数据 ]";
|
||||||
|
UILocalize.GridDataLoading = "数据加载中,请稍候...";
|
||||||
|
UILocalize.GridDataSourceException = "数据源必须为DataTable或者List";
|
||||||
|
UILocalize.SystemProcessing = "系统正在处理中,请稍候...";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user