Range range= (Range)this.workSheet.Cells[1,1];
range.AllowEdit = false;
Run Code Online (Sandbox Code Playgroud)
当我将AllowEdit属性设置为false时,将显示编译错误:
错误:无法将属性或索引器"Microsoft.Office.Interop.Excel.Range.AllowEdit"分配给 - 它是只读的
如何将单元格范围设置为只读?
当我使用此范围的验证时,我的CellContentChanged事件有一些异常.
这是CellContentChanged中的代码:
var updater = new Action<StyleColorItem>(
item =>
{
var editedItem = _taskViewModel.TrackedItems.First(it => it.Id == item.Id);
// Above line I am getting the exception like "Sequence contains no matching element"
editedItem.Update(item);'
});
Run Code Online (Sandbox Code Playgroud) 我正在使用带有MVVM模型的WPF应用程序.我想知道如何比较两个IEnumerable集合值.我有两个IEnumerable值,名为 AvailablePacks和RecommendedPacks.这两个集合具有不同的值集,但它们具有公共属性PackID值.和AvailablePacks有另一个名为Quantity的属性.
现在我想基于PackID值比较这两个IEnumerable集合值,当两个集合具有相同的PackID时,我需要将Quantity(Inside of AvailablePacks)值分配给一个名为PackQuantity的变量,该变量在外部声明.
我是LINQ的新手所以我无法做到这一点.
那我怎么能实现这个目标呢?任何人都可以告诉我这个解决方案吗?
谢谢.
我正在使用C#在我的本地位置(C:\ temp\log.txt)的文本文件中编写我的日志.文本文件存储如下
2011-11-17 23:05:17,266 [6] FATAL Application
2011-11-17 23:05:18,094 [6] FATAL Service
2011-11-17 23:17:08,862 [6] FATAL Receipts - SaveReceipts
System.InvalidOperationException: Sequence contains no elements
at System.Linq.Enumerable.First[TSource](IEnumerable`1 source)
at GID.AAFramework.EntityWrapper.ReceiptFacade.SaveReceipts(IEnumerable`1 records, String user) in c:\AdvancedAnalyticsProjects\Surya\Trunk\dotnet_src\GID.AAFramework.EntityWrapper\ReceiptFacade.cs:line 632
Run Code Online (Sandbox Code Playgroud)
现在我想读取此文件,并希望第一次记录日志和最后日期
如何在此文本文件中获取第一次日期和上次更新日期?
现在我正在使用以下代码阅读此文本文件:
StreamReader sr = new StreamReader(FileLocation);
if (sr != null)
{
linelist.Add(sr.ReadToEnd());
LogInfoByDate.Add(FileLocation, "StartDate:" + linelist.First().Substring(0, 10) + "|" + "EndDate:" + linelist.Last().Substring(0, 10));
}
Run Code Online (Sandbox Code Playgroud)
我编写的这段代码用于获取第一次日期和最后更新日期,如果Exception行是单行的,但它不适用于具有多行的异常,如上所示.现在这是我的问题.任何人都可以告诉我如何获取此文本文件中的第一个和最后一个日期?