小编Mag*_*num的帖子

使用C#Linq返回数组中空/空出现的第一个索引

我有一个名为"汽车"的字符串数组

我想得到数组的第一个索引是null,或者存储的值是空的.这是我到目前为止所得到的:

private static string[] Cars;
Cars = new string[10];
var result = Cars.Where(i => i==null || i.Length == 0).First(); 
Run Code Online (Sandbox Code Playgroud)

但是如何获得这种情况的第一个INDEX?

例如:

Cars[0] = "Acura"; 
Run Code Online (Sandbox Code Playgroud)

那么索引应该返回1作为数组中的下一个可用点.

c# linq

9
推荐指数
2
解决办法
1万
查看次数

jQuery:如何确定点击了哪个<li>标签?

我正在创建一个包含5行文本的表单,每个文本我允许用户选择他们是否希望文本居中,左或右对齐.我有一个列表元素x5的未编号列表.

<li><img src="images/justify_left.png" alt="left" /><span>Justify Left</span></li>
<li><img src="images/justify_center.png" alt="center" /><span>Justify Left</span></li>
<li><img src="images/justify_right.png" alt="right" /><span>Justify Left</span></li>
Run Code Online (Sandbox Code Playgroud)

5组<li>项目中的每一项都指其各自的一行.

使用jQuery,我将如何确定<li>用户选择的15个项目中的哪一个,以便我可以将正确的理由作为post方法对应?

jquery

7
推荐指数
1
解决办法
2万
查看次数

ListBox.DataSource集合与ListBox.Items之间的区别?

我正在动态创建Winforms多选ListBox并将其添加到flowpanel控件中.我从我创建的对象绑定数据源,并验证DataSource实际上有大约14个元素.当我这样做时,listBox.SetSelected(0, true)我会System.ArgumentOutOfRangeException抛出一个错误.

我已经确定问题是,虽然DataSource有14个元素,但Item集合没有(0),因此抛出异常.我的问题是为什么这两者彼此不同,为什么我不简单地在数据源中添加一个foreach项添加到项集合中?

以下是我到目前为止的代码:

case InsertableItemParameter.ParameterType.ListBox:
    //note: two-way bindings are not possible with multiple-select listboxes
    Label lblListBox = new Label();
    lblListBox.Text = param.DisplayText;
    ListBox listBox = new ListBox();
    listBox.DataSource = param.Values;
    listBox.DisplayMember = "Value";
    listBox.SelectionMode = SelectionMode.MultiExtended;
    listBox.Size = new System.Drawing.Size(flowPanel.Size.Width - lblListBox.Size.Width - 10, 100);
    listBox.SetSelected(0, true);   //will throw argument out of range exception here!
    listBox.SetSelected(1, true);
    flowPanel.Controls.Add(lblListBox);
    flowPanel.Controls.Add(listBox);
    flowPanel.SetFlowBreak(listBox, true);
    break;
Run Code Online (Sandbox Code Playgroud)

下面是我尝试和工作的替代解决方案,但为什么我会使用DataSource与Items集合?

case InsertableItemParameter.ParameterType.ListBox:
    //note: two-way bindings are not possible with multiple-select listboxes
    Label …
Run Code Online (Sandbox Code Playgroud)

c# winforms

6
推荐指数
1
解决办法
2524
查看次数

尝试使用Image.Save时,"GDI +中发生了一般错误"

我正在开发Outlook 2010加载项,并从序列化的XML文件加载图像.图像加载很好,并且能够将它分配给Winform上的pictureBox对象没问题.对象保存在

[XmlIgnore]
public Bitmap Image
{
   get { return this.templateImage; }
   set { this.templateImage = value; }
 }
Run Code Online (Sandbox Code Playgroud)

什么时候,我尝试将物理文件保存到硬盘上,但是,我正在做:

string filePath = Path.Combine(dirPath, item.Id + ".jpg");
try
{
    item.Image.Save(filePath, System.Drawing.Imaging.ImageFormat.Jpeg);
}
catch (Exception e)
{
    Debug.WriteLine("DEBUG::LoadImages()::Error attempting to create image::" + e.Message);
}
Run Code Online (Sandbox Code Playgroud)

并且我在GDI +中发生了一般性错误.我已经检查了该文件夹的写权限,并且它具有写权限.我不确定这里有什么问题.我还将ImageFormat更改为bmp和png等等,看看它是否是转换问题......但事实并非如此.有人会建议尝试一下吗?

.net c# gdi+

5
推荐指数
2
解决办法
3万
查看次数

如何检索邮件项目 (Outlook.MailItem) 的 Outlook 文件夹?

我正在通过以下方式获取我的默认收件箱文件夹 inboxFolder = Globals.ThisAddIn.Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox

在我的代码的其他地方,我开始执行 foreach 循环以从这些 MailItems 中提取我想要的特定信息

foreach (var item in this.inboxFolder.Items)
{
   Outlook.MailItem mailItem = (Outlook.MailItem)item;
   //.... doing stuff here
   string SenderEmail = mailItem.SenderEmailAddress;
   string SenderName = mailItem.SenderName;
   string FolderLocation = mailItem.???;  //how to retrieve folder location?
   //.... more stuff here
}
Run Code Online (Sandbox Code Playgroud)

例如: 用户可能创建了一个名为“Test”的子文件夹,如下所示。

Outlook-2010 中用户创建的子文件夹的图像

c# outlook vsto outlook-2010

4
推荐指数
2
解决办法
7504
查看次数

无法自动进入服务器.调试器无法在服务器进程中停止

尝试在Visual Studio 2008 Team System中使用F11进入某个进程时收到以下错误:

"无法自动进入服务器.调试器无法在服务器进程中停止."

我在互联网上搜索了很长时间,我找到的最相关的消息是http://msdn.microsoft.com/en-us/library/65004e38%28v=VS.90%29.aspx.不幸的是,这没有帮助.所有迹象都表明我的ASP.NET设置不正确,但它是VS2008 Team System附带的IIS环境,因此我没有进行任何配置更改.

这个问题的答案,听起来似乎已经修复了我的解决方案,不再是一个活动的链接:在调试WCF时无法自动进入服务器.有谁知道如何进入并解决这个问题?

c# asp.net debugging

3
推荐指数
1
解决办法
3万
查看次数

如何以编程方式选择要在 Outlook 2010 中查看的文件夹?

我正在通过 Search.Save 方法以编程方式创建搜索文件夹。保存搜索后(它在“搜索文件夹”目录中创建一个新文件夹),我想将焦点设置在这个新创建的文件夹上,以便视图更改为该文件夹。

这是我迄今为止的代码......

searchFolders = inboxFolder.Store.GetSearchFolders();
foreach (Outlook.Folder folder in searchFolders)
{
    if (folder.Name == "Expiring Retention Policy Mail")
    {
        folder.ShowItemCount = Microsoft.Office.Interop.Outlook.OlShowItemCount.olShowTotalItemCount;
        //folder.SetCustomIcon(new Bitmap(32, 32));
        folder.Display();
    }
}
Run Code Online (Sandbox Code Playgroud)

当我执行folder.Display()时,它会打开一个全新的检查器窗口...我不希望发生这种情况,我只是想选择它(例如通过设置焦点?)并在同一个检查器窗口中查看它它存在于。有人知道该怎么做吗?

谢谢。

c# outlook vsto outlook-2010

3
推荐指数
1
解决办法
3137
查看次数

如何使用C#将格式化的HTML字符串复制到剪贴板中以进行粘贴?

我的最终目标是将格式化的富文本格式插入Outlook检查器(例如AppointmentItem,MailItem等). 我在MSDN论坛上问过这个问题,有人回复说我应该使用剪贴板复制内容,然后使用我想要使用的目标格式将其粘贴到窗口中.

我有以下HTML 字符串

<html><body><table><tr><td>iPhone</td><td>Telephone#</td></tr></table></body></html>
Run Code Online (Sandbox Code Playgroud)

我有以下C#代码

Clipboard.SetText(insertString, TextDataFormat.Html);

//....
//code to get Word.Range in my inspector item (inconsequential to this question)
//....

selected.Paste();
Run Code Online (Sandbox Code Playgroud)

问题是剪贴板不插入文本,或在代码中抛出COM失败的异常.

使用Paste()时出现COM异常

答案谢谢你

 HtmlFragment.CopyToClipboard(insertString);
 selected.Paste();
Run Code Online (Sandbox Code Playgroud)

在这里找到HtmlFragment代码:http://blogs.msdn.com/b/jmstall/archive/2007/01/21/sample-code-html-clipboard.aspx

c#

2
推荐指数
1
解决办法
4553
查看次数

标签 统计

c# ×7

outlook ×2

outlook-2010 ×2

vsto ×2

.net ×1

asp.net ×1

debugging ×1

gdi+ ×1

jquery ×1

linq ×1

winforms ×1