小编Vin*_*abb的帖子

使div填充剩余屏幕空间的高度

我正在开发一个Web应用程序,我希望内容能够填满整个屏幕的高度.

该页面有一个标题,其中包含徽标和帐户信息.这可以是任意高度.我希望内容div将页面的其余部分填充到底部.

我有标题div和内容div.目前我正在使用表格进行布局,如下所示:

CSS和HTML

#page {
    height: 100%; width: 100%
}

#tdcontent {
    height: 100%;
}

#content {
    overflow: auto; /* or overflow: hidden; */
}
Run Code Online (Sandbox Code Playgroud)
<table id="page">
    <tr>
        <td id="tdheader">
            <div id="header">...</div>
        </td>
    </tr>
    <tr>
        <td id="tdcontent">
            <div id="content">...</div>
        </td>
    </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

页面的整个高度都已填满,无需滚动.

对于内容div中的任何内容,设置top: 0;将把它放在标题下面.有时内容将是一个真实的桌子,其高度设置为100%.放在header里面content不会允许这个工作.

有没有办法在不使用的情况下达到相同的效果table

更新:

内容中的元素div也将高度设置为百分比.因此,100%内部的东西div将填充到底部.两个元素也是50%.

更新2:

例如,如果标题占据屏幕高度的20%,则内部指定为50%的表#content将占用屏幕空间的40%.到目前为止,将整个事物包装在表中是唯一有效的方法.

html css html-table

1743
推荐指数
30
解决办法
91万
查看次数

可以使用静态变量来缓存ASP.net中的信息吗?

目前我正在使用ASP.net上的C#3.5开发项目管理应用程序.为了减少对数据库的命中,我使用静态变量缓存了大量信息.例如,用户列表在静态类中保存在内存中.该类在启动时从数据库中读取所有信息,并在更改时更新数据库,但它永远不需要从数据库中读取.

该类在写入数据库的同时将更新的信息与其他Web服务器(如果存在)绑定.pinging机制是一个Windows服务,缓存对象使用随机可用端口进行注册.它也用于其他事情.

数据量并不是那么好.目前我正在使用它来缓存用户(密码哈希,权限,名称,电子邮件等).它只是保存了一堆对数据库的调用.

我想知道这种方法是否有任何陷阱和/或是否有更好的方法来缓存数据?

c# asp.net caching static-variables

23
推荐指数
1
解决办法
8723
查看次数

默认情况下,在ASP.Net日历控件中选择当前日期

假设我有一个带有此日历控件的aspx页面:

<asp:Calendar ID="Calendar1" runat="server"  SelectedDate="" ></asp:Calendar>
Run Code Online (Sandbox Code Playgroud)

有没有什么我可以让SelectedDate默认使用当前日期,而不必使用代码隐藏?

asp.net calendar

19
推荐指数
4
解决办法
10万
查看次数

为什么List <>.OrderBy LINQ比IComparable + List <>更快.在Debug模式下排序?

我感兴趣的是使用LINQ对类进行排序,或者实现IComparable接口和List.Sort是否会更快.当LINQ代码更快时,我感到非常惊讶.

为了进行测试,我创建了一个非常简单的类,其中包含不太合适的TestSort名称,实现了IComparable.

class TestSort: IComparable<TestSort>  {
    private int age;
    private string givenName;

    public int Age {
        get {
            return age;
        }
        set {
            age = value;
        }
    }

    public string GivenName {
        get {
            return givenName;
        }
        set {
            givenName = value;
        }
    }

    public TestSort(int age, string name) {
        this.age = age;
        this.givenName = name;
    }

    public int CompareTo(TestSort other) {
        return this.age.CompareTo(other.age);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后是一个简单的程序来对它进行多次排序 - 排序比复制列表要贵得多,因此可以忽略它的效果.

class Program {
    static void Main(string[] args) {
        // Create the …
Run Code Online (Sandbox Code Playgroud)

c# linq sorting benchmarking

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

我可以在.NET中使用"System.Currency"吗?

是否可以使用system.currency.它说system.currency由于其保护级别而无法访问.什么是货币的替代品.

.net

12
推荐指数
2
解决办法
7663
查看次数

在Chrome中打印精确测量值

对于元素,如果以厘米或英寸为单位指定测量值,则会从Firefox和Internet Explorer以相同大小打印.另一方面,Chrome使元素更大.

反正有没有让Chrome打印出精确到指定尺寸的东西,还是我只需要忍受的东西?

例如

<!doctype html>
<html>
  <head>
    <style type="text/css">
        div.box {
          border: 1px solid black;
          width: 5cm;
        }
    </style>
  </head>
  <body>
    <div class="box">box</div>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

上面的代码在Firefox和IE中打印精确的5厘米(在我的打印机上),但打印距离Chrome约5.5厘米.

html css printing google-chrome

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

将IME放在从Control派生的自定义文本框中

我在C#.net 3.5中创建了自己的单行文本框控件

我从头开始写这个,包括我自己的选择代码,滚动,复制/粘贴等.它甚至可以选择从左到右的文本,而不是我曾经使用过的...

我遇到的问题是与IME(输入法编辑器)集成.IME在某种程度上确实有效,但我遇到了一些问题.我在这里列出其中一个.

通常,使用TextBox,IME构造将在TextBox中呈现.但是,在我的控制中,IME显示在屏幕的右下角.我尝试查看其他自定义控件,包括SharpDevelop中使用的控件.但是,这也存在同样的问题.键入中文,日文或韩文导致IME的内容在屏幕的右下角完成.

我需要一些关于如何在我自己的文本框中完成此操作的指针,我查看了Windows API for IME,但是有很多功能,我不知道从哪里开始.

那么,有什么想法吗?

如果任何代码示例都在C++(托管/非托管)或VB.net中,那就没问题.我可以轻松地移动它.

.net c# custom-controls ime winforms

8
推荐指数
1
解决办法
4636
查看次数

如何让C#设计器知道C#中的Padding或其他对象/结构的默认属性

当一个属性不是支持的类型之一时,如何告诉设计者默认值DefaultValue()?例如,a Padding或a Font.

通常,当您使用Windows窗体控件时,默认值将在"属性"窗口中以普通字体显示,并且更改(非默认)值将以粗体显示.例如

属性窗口的图像,其中非默认值以粗体显示

在此示例中,默认值为ShowAddressis false,默认值为ShowNameis true.通过以下方式实现此效果:

[DefaultValue(false)]
public bool ShowAddress {
  get { return mShowAddress; }
  set { 
    mShowAddress = value; 
    Invalidate();
  }
}

[DefaultValue(true)]
public bool ShowName { ... }
Run Code Online (Sandbox Code Playgroud)

然而,当我试图做某事时Padding,我悲惨地失败了:

[DefaultValue(new Padding(2))]
public Padding LabelPadding { ... }
Run Code Online (Sandbox Code Playgroud)

哪个当然不会编译.

我怎么会这样做?

c# attributes default-value visual-studio-2008 winforms

8
推荐指数
2
解决办法
6353
查看次数

基于GPU的视频卡加速您的程序计算,如何?

我在这篇文章中读到,一家公司已经创建了一个软件,能够并行使用多个基于GPU的视频卡,每秒处理数千亿个定点计算.

该程序似乎在Windows中运行.是否可以从Windows将线程分配给GPU?他们是否创建了自己的驱动程序然后与之交互?知道他们是怎么做的吗?

multithreading gpu

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

为什么 Chrome 在打印时会在缩放元素内引入额外的空间?

在 Chrome 中,当 div 缩小时,一切看起来都很好,直到我单击打印。单击打印后,会在随机位置添加额外的空格。如果空格位于文本内部,则其高度为一行,或者如果在图像之前引入,则其高度与图像相同。

我有一个简单的例子,它只是 div 中的文本。乍一看,这个例子看起来是正确的;但单击打印后,打印预览会在第二段中添加一个空格,该空格在打印对话框关闭后仍然保留。

此行为不会发生在 Firefox 或 IE 中。

示例: http: //jsfiddle.net/5tovueyt/1/

HTML 代码:

<a href="javascript:window.print();">Print</a>
<div>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis molestie, mi vitae tincidunt posuere, est lorem dictum dolor, et sollicitudin leo felis at mauris. Ut finibus rutrum leo, vel tristique purus maximus a. Curabitur vitae lacinia lacus, at ornare neque. Integer ut fringilla libero. Donec tristique quam eget diam convallis, vitae sollicitudin lectus malesuada. Vestibulum euismod at ligula ut …
Run Code Online (Sandbox Code Playgroud)

html css printing google-chrome

5
推荐指数
0
解决办法
371
查看次数