小编Fah*_*had的帖子

使用EPPlus将Excel转换为DataTable - 将Excel锁定以进行编辑

我正在使用以下代码将Excel转换为使用EPPlus的数据表:

public DataTable ExcelToDataTable(string path)
{
    var pck = new OfficeOpenXml.ExcelPackage();
    pck.Load(File.OpenRead(path));
    var ws = pck.Workbook.Worksheets.First();
    DataTable tbl = new DataTable();
    bool hasHeader = true;
    foreach (var firstRowCell in ws.Cells[1, 1, 1, ws.Dimension.End.Column])
    {
        tbl.Columns.Add(hasHeader ? firstRowCell.Text : string.Format("Column {0}", firstRowCell.Start.Column));
    }
    var startRow = hasHeader ? 2 : 1;
    for (var rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++)
    {
        var wsRow = ws.Cells[rowNum, 1, rowNum, ws.Dimension.End.Column];
        var row = tbl.NewRow();
        foreach (var cell in wsRow)
        {
            row[cell.Start.Column - 1] …
Run Code Online (Sandbox Code Playgroud)

c# excel epplus

29
推荐指数
5
解决办法
8万
查看次数

固定div背景

我想创建一个布局,我想在左边显示图像,在右边显示内容.当内容滚动时,图像应保持不变.

我正在使用的CSS:

    <style type="text/css">

        #page-container
        {
            margin:auto;            
            width:900px;              
            background-color:Black;
        }

        #header
        {
           height:150px;
           width:650px;
        }

        #main-image
        {
            float:left;
            width:250px;
            height:500px;
            background-image:url('../images/main-image.png');
            position:fixed;
        }


        #content
        {
             margin-left:250px;
             padding:10px;
             height:250px;
             width:630px;
             background-color:Teal;

        }
    </style>
Run Code Online (Sandbox Code Playgroud)

HTML:

<div id="page-container">
    <div id="header"><img src="someimagelink" alt="" /></div>
    <div id="main-image"></div>
    <div id="content"></div>    
</div>
Run Code Online (Sandbox Code Playgroud)

很多时间在这个网站上,我已经理解了背景附件:固定图像在整个视口中的位置,而不是它应用的元素.

我的问题是如何创建这种布局?

我不想将该图像作为背景图像,就像窗口调整大小一样,它可能会被隐藏.如果窗口大小小于900px(我的页面宽度),我想要滚动条出现,以便可以随时查看图像.

这个代码会发生这种情况,但我希望图像从我的元素开始.

我该怎么做呢?

提前致谢 :)

编辑:

我接受了建议并添加了一个位置:固定属性为#main-image.使用如上所示的HTML和CSS.现在,我还想修复标题,使其不移动.基本上,只有我的内容部分应该滚动.但是,如果我添加一个位置:固定到标题,我的#main-image和#content现在位于我的标题之上.如果我向#main-image添加一个margin-top:150px(因为我的标题高度是150px),它可以正常工作并适当地向下移动.但是如果我在#content中添加一个margin-top:150px,我的标题会向下移动150px并且仍然位于我的#content之上.有人可以解释为什么会这样吗?提前致谢 :)

html css background attachment fixed

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

WPF MVVM文本框验证

我正在使用MVVM创建一个WPF应用程序.我有一个文本框,它绑定到我的ViewModel类型的属性,double默认值为0.0.如果我现在在文本框中输入文本值(例如,abc),则在失去焦点时,文本框会突出显示,表示值不正确.但是,用户仍然可以继续并单击"提交"以调用ViewModel命令.由于Text文本框的属性绑定到doubleViewModel中的类型属性,因此ViewModel属性包含默认值0.0,并且我无法找到用户输入的文本.

因此,我无法确定用户是否实际输入的值为0或输入是否错误.如何正确执行此验证?我应该将它绑定到string属性,以便我可以获取输入的文本,并尝试将其解析为一个double值,以查看输入是否正确?或者有更好的方法吗?

<TextBox HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="{Binding DoubleProperty}" VerticalAlignment="Top" Width="120"/>
Run Code Online (Sandbox Code Playgroud)

.net c# wpf xaml mvvm

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

类型参数的约束 - new()

根据MSDN,该new()约束用于确保类型参数必须具有公共无参数构造函数。但是,请考虑下面给出的示例(取自同一页面)。

public class Employee
{
    public Employee(string name, int id)
    {
        Name = name;
        ID = id;
    }
    public string Name { get; set; }
    public int ID { get; set; }
}

class EmployeeList<T> where T : Employee, new()
{

}
Run Code Online (Sandbox Code Playgroud)

此处,该Employee类型没有无参数/默认构造函数,但此代码编译成功。有人可以详细说明这个约束的用法以及为什么它有效吗?

c# generics

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

Angular JS在可编辑模式下添加新行

我正在使用ng-repeat指令创建一个网格.我需要能够编辑内联,这是我使用这里提供的相同的想法实现的.我现在还需要能够通过单击按钮向该网格添加新行.我这样做是通过在每次单击按钮时将一个新条目推送到我的集合中,这会在我的网格中插入一个新行.我希望在可编辑模式下添加此新行.但是,要做到这一点,我需要能够在推送新行时动态设置editMode属性true.我怎样才能做到这一点?

JSFiddle:http://jsfiddle.net/Thw8n/69/

javascript angularjs angularjs-directive angularjs-ng-repeat

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