我刚刚开始使用Unity.我仍然想知道它的优点是什么.
UnityContainer().Resolve<T>()它可以返回为泛型类型注册的类型的具体实例T.
我想我也可以用Activator.CreateInstance<T>().
Activator 是.NET Framework中的内置类,所以我想知道Unity的独特功能是什么?
我想在我的ListBox中有多列。以下是我在应用程序中获得的图片示例。

我实际上有大约7列,但是只打印了两列,以使其更易于理解。
因此,第一列会说date,第二列会说name。如您所见,数据没有进入自己的列。
这是我的代码:
this.listBox1 = new System.Windows.Forms.ListBox();
this.SuspendLayout();
//
// listBox1
//
this.listBox1.FormattingEnabled = true;
this.listBox1.HorizontalScrollbar = true;
foreach (XmlNode xn in xnList)
{
string date = xn.OfType<XmlNode>().FirstOrDefault(n => n.Name == "Date").FirstChild.Value;
string id = xn.OfType<XmlNode>().FirstOrDefault(n => n.Name == "ID").FirstChild.Value;
if (date == cari)
{
this.listBox1.Items.AddRange(new object[] {
//dateBox.Text,
dateBox.Text + "\r\n" + date});
this.listBox1.Items.AddRange(new object[] {
"sarabrown"});
}
}
this.listBox1.Location = new System.Drawing.Point(12, 28);
this.listBox1.MultiColumn = true;
this.listBox1.Name = "listBox1";
this.listBox1.ScrollAlwaysVisible = true;
this.listBox1.Size …Run Code Online (Sandbox Code Playgroud) 有多可靠mysql_insert_id()在竞争条件下我的意思是,当多个用户同时插入数据时,这个函数会返回真实的ID还是会返回其他用户插入的数据ID?
表引擎是MyISAM。
有10行primary_student_table.
当我执行以下代码时,结果为-1.
Dim count As Int16
con.Open()
query = "SELECT COUNT(roll) AS rollcount FROM primary_student_table WHERE admityear = 2011 AND batch = 1 "
cmd = New SqlCommand(query, con)
count = cmd.ExecuteNonQuery
MsgBox(count)
con.Close()
Run Code Online (Sandbox Code Playgroud)
上面的代码有什么问题?
this.Controls.Add(button);
button.Font = new Font("Arial", 8);
button.Name = "btn" + idDanych;
button.Width = 100;
button.Height = 100;
button.Location = new Point(0, 0);
button.Text = "…" + Environment.NewLine + Environment.NewLine + "…";
button.ForeColor = Color.Black;
Run Code Online (Sandbox Code Playgroud)
如何更改按钮第二行文本的字体大小和颜色?
首先,抱歉我的英语不好...我希望你能理解我想说的话。
我有一个小代码问题,我需要获取类属性的值。(这不是我的完整项目,而是我想做的事情的概念。用这个简单的代码,我被阻止了。)
有代码:(此示例工作正常。)
using System;
using System.Reflection;
class Example
{
public static void Main()
{
test Group = new test();
BindingFlags bindingFlags = BindingFlags.Public |
BindingFlags.NonPublic |
BindingFlags.Instance |
BindingFlags.Static;
Group.sub.a = "allo";
Group.sub.b = "lol";
foreach (PropertyInfo property in Group.GetType().GetField("sub").FieldType.GetProperties(bindingFlags))
{
string strName = property.Name;
Console.WriteLine(strName + " = " + property.GetValue(Group.sub, null).ToString());
Console.WriteLine("---------------");
}
}
}
public class test
{
public test2 sub = new test2();
}
public class test2
{
public string a { get; set; } …Run Code Online (Sandbox Code Playgroud) 这是一个架构/最佳实践问题,而不是其他任何问题,所以请随意添加你的两美分.我知道我在标题中声明了状态,但这适用于对象的任何基本属性.我认为下面的帐户示例将有助于证明我的问题比状态好一点.
这是一个示例Account对象:
public class Account
{
private IList<Transaction> _transactions;
public AddTransaction(trans as Transaction)
{
_transaction.add(trans)
}
}
Run Code Online (Sandbox Code Playgroud)
现在假设我想开始记录每次使用此对象添加事务时的历史记录.
public class AccountHistory
{
private DateTime _historyDate;
private String _details;
public AccountHistory(string details)
{
_historyDate = DateTime.Now;
_details = details;
}
}
Run Code Online (Sandbox Code Playgroud)
在这个级别,我通常做的是将一组历史事件添加到帐户对象,并添加一行代码以在AddTransaction()方法内创建历史事件,如下所示
public AddTransaction(trans as Transaction)
{
_transaction.add(trans);
**_historyEvents.add(new AccountHistory("Transaction Added: " + trans.ToString());**
}
Run Code Online (Sandbox Code Playgroud)
现在下一部分是问题开始出现的地方.假设我想进行批量发布,并且我希望保留一份记录,说明在此批量发布中哪些帐户已更改为报表,或者我是否需要稍后撤消.所以我会创建一个像这样的对象.
public class HistoryGroup()
{
private IList<AccountHistory> _events;
}
Run Code Online (Sandbox Code Playgroud)
从这里我看到一些不同的选项来处理这个,因为上面的示例代码无法处理它.
1)在Service类型对象中创建一个函数,该对象循环调用AddTransaction()方法的帐户列表,并创建与HistoryGroup关联的历史记录
public void AddTransactions(IList<Account> accounts, Transaction trans)
{
HistoryGroup history = new HistoryGroup();
for (int x=0;x …Run Code Online (Sandbox Code Playgroud) 我试过了
UIManager.getDefaults().put("TitledBorder.font", Font.BOLD);
contentPanel.setBorder(new TitledBorder("Client Downloader"));
Run Code Online (Sandbox Code Playgroud)
但它并没有让它变得大胆.它看起来只是分开.
这是错误的方式吗?
我正在尝试替换文本字符串中的一组单词。现在我有一个循环,它表现不佳:
function clearProfanity(s) {
var profanity = ['ass', 'bottom', 'damn', 'shit'];
for (var i=0; i < profanity.length; i++) {
s = s.replace(profanity[i], "###!");
}
return s;
}
Run Code Online (Sandbox Code Playgroud)
我想要一些工作更快的东西,并且可以用与###!原始单词长度相同的标记替换坏词。
c# ×6
.net ×2
winforms ×2
activator ×1
ado.net ×1
architecture ×1
button ×1
clickonce ×1
colors ×1
concurrency ×1
foreach ×1
getproperty ×1
getvalue ×1
java ×1
javascript ×1
line ×1
listbox ×1
mysql ×1
oop ×1
poco ×1
profanity ×1
sql-server ×1
swing ×1
vb.net ×1