在Visual Basic中,您可以使用模块作为存储"松散"代码的位置,该代码可以是可以从应用程序中的其他位置访问的方法和变量,而无需先初始化某些内容,并且可以设置或更改变量状态.继续保持这个价值.
我发现的最接近的是C#中的静态方法作为公共类的一部分,但是它具有不可全局访问的变量的缺点,或者如果变量是静态的,则内部可设置/可获取.
以VB中存储的空白模块中的以下简单代码为例.
Private iCount as Integer = 0
Public Sub Increment()
iCount = iCount + 1
End Sub
Public CheckModulus() As Boolean
If iCount % 6 == 0 Then
Return True
Else
Return False
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
现在,你有一个类,并从类,你可以调用CheckModulus()这样
Public Class Fruits
Public Static Function ExactBunches() As String
If CheckModulus() Then
Return "You have an exact amount of bunches"
Else
Return "You need more fruits to make a bunch"
End If
End Function
End Class
Run Code Online (Sandbox Code Playgroud)
现在我意识到有一些黑客和斜线,你可以将iCount移动到'设置',并在应用程序启动等时重置它,但请记住这是一个非常简单的例子来说明能够拥有一套的便利性全球代码.我发现这在过去最有用的地方是创建UserControls或自定义类.此外,目的不是使所有内容都可以全局访问,而是让某些方法和变量可以全局访问,而其他方法和变量只能从模块中访问.例如,虽然 …
( - )出现时,图像如何从加号(+)和减号改变展开/折叠的图像ShowPlusMinus和/或ShowRootLines有true。
看起来像这样(例如Windows资源管理器)
我试图在PHP和VB.NET中编写一个函数,它使用Triple DES以两种方式传递加密数据.问题是,当我尝试使用PHP解密在VB.NET中加密的字符串时,我收到一条错误消息,指出IV的块大小必须匹配.
我在VB.NET中编写的类如下,并且功能齐全,因为它将完美地加密和解密自己的块.
Imports System
Imports System.Text
Imports System.IO
Imports System.Security.Cryptography
Public Class Cipher
Dim method As TripleDESCryptoServiceProvider
Dim key As Byte()
Public Property Password() As String
Get
Return System.Text.Encoding.Unicode.GetString(Key)
End Get
Set(value As String)
key = System.Text.Encoding.Unicode.GetBytes(value)
End Set
End Property
Public Function Encrypt(data As String) As String
Dim ms As New System.IO.MemoryStream
' Create the encoder to write to the stream.
Dim dataBytes() As Byte = System.Text.Encoding.Unicode.GetBytes(data)
Dim encStream As New CryptoStream(ms, method.CreateEncryptor(), System.Security.Cryptography.CryptoStreamMode.Write)
' Use …Run Code Online (Sandbox Code Playgroud) 按顺序给出以下值:
011124
01112
011123
1905
我怎么能用Linq对它进行排序:
List<string> values = new List<string>() { "011124", "01112", "011123", "1905" };
Run Code Online (Sandbox Code Playgroud)
..所以它实际上是这样的:
List<string> values = new List<string>() { "011124", "011123", "01112", "1905" };
Run Code Online (Sandbox Code Playgroud)
(更新:添加'1905',因为之前的演示可以轻松地使用int排序 - 很抱歉混淆)
首先,我想说明我对整个聊天泡泡概念都是新手.
我做了很多研究,并且在有关如何在WinForms桌面应用程序中完成此操作的结果中出现了空洞.
这个概念相当简单(并且很常见,特别是在移动设备中)

我想这样做(理想情况下在RichTextBox中).请记住,这是一个WinForms应用程序,因此XAML组件将无法正常工作.这只是聊天布局问题.发送/接收/显示消息已经完成,我只需要知道如何将这些消息包装在气泡内(左或右取决于通信方向),并在表单中显示 - 在正常聊天流程中(目前正在使用) RichTextBox,并着色名称).
提前致谢.
使用控制台应用程序时,人们不禁会注意到本机命令BackgroundColor和ForegroundColor仅支持CGA色谱(黄色,红色,深黄色,深红色等)

我想做的是扩展它,以便我可以使用我当前分辨率(又名真彩色等)支持的任何颜色,而不仅仅是这个有限的颜色池.
在编写DOS应用程序时(是的.DOS ---古老的学校DOS),我没有任何问题选择几乎任何颜色超出此限制.我记得在.NET(2002年)的婴幼儿时期看到了有关如何做到这一点的一些事情,但我无法找到它,因为搜索中关于"控制台"和"颜色"的每个链接都会提出如何着色,并且仅在图像中描绘的绝对最基本的颜色---基本上向人们展示了如何更改ForegroundColor和BackgroundColor属性.
要澄清 - 我希望能够使用TRUE COLOR aka,使用VB.NET在控制台应用程序中使用字体颜色和背景颜色的整个色谱.
我在这里发现了一篇文章,展示如何找到任何给定颜色的"最接近"控制台颜色,但这不起作用.基本颜色缺少许多真正的颜色,如橙色 - 以及至少1000种其他命名颜色.
我可以通过使用Win32/etc API来破解垃圾,而逻辑认为这必须是可能的,因为在控制台内运行的大量应用程序允许真正的颜色或至少VGA支持.
尝试使用async/await和transactions将多个记录插入MySQL数据库,但是仍然会导致UI在循环中变得冻结/无响应.
查看以下代码,我做错了什么或如何实现这一点,以便UI在此过程中仍然响应.
异步方法
public static async Task AddRecords() {
foreach ( string month in Months ) {
await MakeTable( month );
string query="INSERT INTO `"+month+"` ( Caller, Started, Dialed, DurationSec, DurationMin, Cost, Location, Switch ) VALUES (@Caller, @Started, @Dialed, @DurationSec, @DurationMin, @Cost, @Location, @Switch);";
using ( MySqlConnection cn=new MySqlConnection( ConnectionString.ToString() ) ) {
await cn.OpenAsync();
using ( MySqlTransaction trans=cn.BeginTransaction() ) {
using ( MySqlCommand cmd=new MySqlCommand( query, cn, trans ) ) {
cmd.CommandType=CommandType.Text;
foreach ( Record r in CDR.Records ) …Run Code Online (Sandbox Code Playgroud) 我有以下代码,其中我有一个定义的值,但当我尝试对它做任何简写方程时,它返回0.
$m = 1.10;
echo 'Markup Percentage : ' . ( $m > 1 ? ($m * 100) - 100 : 'N/A' ) + ' %';
Run Code Online (Sandbox Code Playgroud)
结果:
加价百分比:0%
$m = 1.10;
echo 'Markup Percentage : ';
if($m > 1) {
echo ($m * 100) - 100;
} else {
echo 'N/A';
}
echo ' %';
Run Code Online (Sandbox Code Playgroud)
加价百分比:10%
如果不明显,三元操作的结果应与标准操作相同.我做错了什么或者这是php 5.4中的一个错误?
我正在关注Cookie中间件,为我的简单Web应用程序添加身份验证.
我在startup.cs配置方法中添加了以下代码.
app.UseCookieAuthentication(new CookieAuthenticationOptions()
{
AuthenticationScheme = "Cookies",
LoginPath = new PathString("/Account/Login/"),
AccessDeniedPath = new PathString("/Account/Error/"),
AutomaticAuthenticate = true,
AutomaticChallenge = true
});
Run Code Online (Sandbox Code Playgroud)
当我访问/ Home时,它会重定向到/ Account/Login但页面无法打开并收到错误消息
localhost页面不起作用:localhost重定向了你太多次了.
该网址多次添加相同的登录页面,看起来像
我做错了什么?帮我解决这个问题.
在从暴雪(6 MB JSON文件)下载拍卖数据时,在解码时,我能够将错误跟踪到:
"使用JSON JavaScriptSerializer进行序列化或反序列化时出错.字符串的长度超过了maxJsonLength属性上设置的值.\ r \nParameter name:input"
如何在下面的类中将maxJsonLength更改为20 MB(因为我解析的某些JSON可能会那么大)?
public sealed class DynamicJsonConverter : JavaScriptConverter
{
public override object Deserialize(IDictionary<string, object> dictionary, Type type, JavaScriptSerializer serializer)
{
if (dictionary == null)
throw new ArgumentNullException("dictionary");
return type == typeof(object) ? new DynamicJsonObject(dictionary) : null;
}
public override IDictionary<string, object> Serialize(object obj, JavaScriptSerializer serializer)
{
throw new NotImplementedException();
}
public override IEnumerable<Type> SupportedTypes
{
get { return new ReadOnlyCollection<Type>(new List<Type>(new[] { typeof(object) })); }
}
#region Nested type: DynamicJsonObject
private sealed …Run Code Online (Sandbox Code Playgroud) c# ×6
vb.net ×4
php ×2
winforms ×2
arrays ×1
async-await ×1
asynchronous ×1
chat ×1
colors ×1
cookies ×1
encryption ×1
equivalent ×1
json ×1
linq ×1
module ×1
mysql ×1
sorting ×1
transactions ×1
treeview ×1
tripledes ×1
uxtheme ×1