标签: cells

如何在WPF Datagrid中禁用编辑单元格?

我正在Windows Presentation Foundation中构建一个数据网格,我遇到了问题.当用户双击数据网格中的单元格时,单元格将进入编辑模式.我想防止这种情况.相反,我希望用户能够选择整行 - 而不是编辑其中的值.

如何双击选择整行而不是将单击的单元格置于编辑模式?

wpf datagrid cells wpfdatagrid

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

gridView具有不同的单元格大小,pinterest风格

背景

GridView是一个扩展 AdapterView的类,这意味着它可以有效地显示网格样式的单元格,并在用户滚动时回收旧视图以显示为新视图.

问题

有时,您希望获得一个特殊的UI,它类似于Windows Phone Tiles UI,具有不同大小的单元格.

像这样的东西:

AABB
AACC
AADD
AADD
Run Code Online (Sandbox Code Playgroud)

每个字母代表其细胞的一部分,因此细胞A是2x4,细胞B和细胞C各占2x1,细胞D是2x2.

它可能甚至更多,其中单元格D比我所示的稍微高一点,并且在它下方有另一个单元格,因此D的末端和A的末尾不必对齐.

具有这种风格的应用程序的一个例子是pinterest.

GridView不允许这样的事情.

事实上,我尝试的每个解决方案都有问题.想问一下是否有其他替代品或更好的解决方案.

我发现了什么

有多种方法可以解决此问题:

  1. 作为扩展AdapterView 的类,GridView可以为每个项目设置一个类型(使用BaseAdapter),这将允许您设置如何布局单元格.

    但是,它仍会限制你,因为你会得到一排物品,一个在另一个之下.你必须让它们对齐.

  2. GridLayout是一个相对较新的布局,它非常灵活.谷歌为它发布了一个很好的兼容性库,支持API7及更高版本.

    但是,它不使用任何视图的回收,因此如果您希望显示大量项目,这是一个糟糕的选择.

    如果您有很多项目,则需要为它们创建所有视图.

  3. QuiltView库 - 从GridLayout扩展,所以基本上有类似的问题.

  4. StaggeredGridView - 看起来最有前途,但有很多错误,特别是在改变方向时.这样的错误包括空单元格,坏滚动和NPE(罕见但仍然发生).我也不确定它是否支持单独使用自定义单元而不是imageView.

  5. 其他解决方案,如此处所述.

这个问题

有谁知道这个问题的另一种替代方案?对于我展示的任何解决方案,可能有一些解决方法吗?


编辑:我认为关于StaggeredGridView,滚动和异常可以通过使用在getView中设置其大小的普通ImageView来解决.我认为它以一种奇怪的方式工作的原因是样本在从互联网加载后更新了imageview的大小.

但是,空单元格问题仍然存在于此库中.不仅如此,即使不改变方向,它们的尺寸也会发生很大变化.


编辑:目前,我认为最好的解决方案是使用 PinterestLikeAdapterView库.

它没有我能找到的任何问题.

但是,它不能使项目占用超过1个单元格宽度.尽管如此,这还是非常好的.

编辑:遗憾的是它与notifyDataSetChanged有问题.我在这里报道了这件事.

android cells android-gridview android-adapterview android-gridlayout

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

一种在html中将表格单元格组合在一起的方法?

所以这很简单.我需要一种将细胞分组在一起的方法.像一个<div>或一个,<span>但没有一个工作.<tbody>似乎是一个很好的解决方案,但它只适用于表行.救命!

html grouping html-table cells

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

如何比较matlab细胞或结构

可能重复:
Octave/MATLAB:如何比较结构的相等性?

是否有matlab单元格或结构对象的简单比较函数?使用'=='似乎不起作用:(

matlab struct cells

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

为什么Range工作,但不是Cell?

我试图通过将值从一个范围分配到另一个范围来将一些数据从一个工作簿移动到另一个工作簿.当我使用普通的Range语法指定目标范围(Range("A1:B2"))时,我的代码可以工作,但如果我尝试使用Range,Cells语法(范围(单元格(1,1),单元格(2) ,2)))我的代码不起作用.

我激活目标工作簿(ActiveWorkbook)并在源工作簿(ThisWorkbook)中运行代码.

此代码有效:

ActiveWorkbook.Worksheets(1).Range("A1:B2").Value _
= ThisWorkbook.Worksheets(1).Range(Cells(1, 1), Cells(2, 2)).Value
Run Code Online (Sandbox Code Playgroud)

但是这段代码没有:

ActiveWorkbook.Worksheets(1).Range(Cells(1, 1), Cells(2, 2)).Value _
= ThisWorkbook.Worksheets(1).Range(Cells(1, 1), Cells(2, 2)).Value
Run Code Online (Sandbox Code Playgroud)

我得到的错误是运行时错误'1004':应用程序定义或对象定义的错误.

有谁知道为什么使用单元格对象导致我的问题,或者是否有其他问题我不知道?

vba range cells

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

隐藏表格中的空单元格

我想在表格中隐藏空单元格.这是我的代码:

$(function() {
  $(".empty").each(hideCellIfEmpty);
});

function hideCellIfEmpty() {
  var theCell = $(this);
  if (theCell.html().length == 0) {
    hideSoft(theCell);
  }
}

function hideSoft(jQElement) {
  jqElement.css('visibility', 'hidden');
}
Run Code Online (Sandbox Code Playgroud)
table.empty {
  width: 350px;
  border-collapse: collapse;
  empty-cells: hide;
}
td.empty {
  border-style: solid;
  border-width: 1px;
  border-color: blue;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<table class="empty">
  <tr>
    <th></th>
    <th>Title one</th>
    <th>Title two</th>
  </tr>
  <tr>
    <th>Row Title</th>
    <td class="empty">value</td>
    <td class="empty">value</td>
  </tr>
  <tr>
    <th>Row Title</th>
    <td class="empty">value</td>
    <td class="empty"></td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

你可以看到,第二行显示空单元格.但我想隐藏它.而且,我不想用border-collapse:separate.是否可以使用隐藏空单元格border-collapse:collapse?我也想知道为什么这会显示空单元格.

PS使用border-collapse: separate …

html-table cells hide

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

空字符串与NULL

我有一张表,其中一些行有一些空白cells.我尝试使用IS NULL函数选择这样的行.但查询选择0行.

select * from zzz_fkp_registration_female where fname is null;
(0 row(s) affected)
Run Code Online (Sandbox Code Playgroud)

现在我将查询更改为:

select * from zzz_fkp_registration_female where fname is null or fname ='';
Run Code Online (Sandbox Code Playgroud)

我得到了理想的结果.

为什么IS NULL没有给出结果?是什么区别IS NULL,并''由于细胞是空的.请解释.

sql sql-server null cells

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

为原型单元格更改了dequeueReusableCellWithIdentifier行为?

在iOS5中,在故事板上使用ARC和原型单元格用于tableView,我可以替换下面的代码:

static NSString *CellIdentifier = @"Cell";

UITableViewCell *cell = [tableView 
  dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
    cell = [[UITableViewCell alloc] 
      initWithStyle:UITableViewCellStyleDefault 
      reuseIdentifier:CellIdentifier];
}

// Configure the cell...
return cell;
Run Code Online (Sandbox Code Playgroud)

有了这个简单的代码??:

UITableViewCell *cell = [tableView 
  dequeueReusableCellWithIdentifier:@"Cell"];
return cell;
Run Code Online (Sandbox Code Playgroud)

我在这个链接上看到了这个:

http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1

提前致谢!

Arildo

iphone cells storyboard tableview ios5

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

VBA中的Sum函数

我在vba中求和单元格有问题.我需要使用Cells(a,b):

Range("A1").function="=SUM(Range(Cells(2,1),Cells(3,2)))"
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

excel vba sum cells

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

粘贴Mathematica代码,以便将其分解为单独的输入单元格

我经常将Mathematica代码从网站(例如SO)复制到笔记本中.代码通常被粘贴为单个输入单元格.我正在寻找一种简单的方法将其粘贴为几个输入单元格,以便于逐步评估.

例如,

a = 2;
f[x_] := x^a

Plot[f[x], {x,0,2}]
Run Code Online (Sandbox Code Playgroud)

理想情况下会粘贴为两个输入单元格.最好还应保留手动格式化(即原始换行符)(默认粘贴不是这种情况).

通常,如果选择所有输入单元格(ALT-单击),将它们复制到文本编辑器中,然后将生成的文本复制回笔记本,应该与复制的原始单元格相当.

wolfram-mathematica cells mathematica-frontend

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