我试图弄清楚如何让鼠标滚动在wpf窗口上工作,其中包含scrollviewer和datagrid.WPF和C#代码如下
<ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<Border Name="DataGridBorder" BorderThickness="2" Margin="1" CornerRadius="4" BorderBrush="#FF080757">
<dg:DataGrid AutoGenerateColumns="False" Name="ValuesDataGrid"
BorderThickness="0" CanUserResizeColumns="True" FontWeight="Bold" HorizontalScrollBarVisibility="Auto"
CanUserReorderColumns="False" IsReadOnly="True" IsTextSearchEnabled="True" AlternationCount="2"
SelectionMode="Extended" GridLinesVisibility="All"
HeadersVisibility="Column" CanUserAddRows="False" CanUserDeleteRows="False" CanUserResizeRows="False" CanUserSortColumns="False"
RowDetailsVisibilityMode="Collapsed" SelectedIndex="0"
RowStyle="{StaticResource CognitiDataGridRowStyle}"
>
<dg:DataGrid.Columns>
<dg:DataGridTemplateColumn Header="Title" >
<dg:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" >
<TextBlock HorizontalAlignment="Left" VerticalAlignment="Center" Text="{Binding Path=Name}" FontWeight="Normal" />
</StackPanel>
</DataTemplate>
</dg:DataGridTemplateColumn.CellTemplate>
</dg:DataGridTemplateColumn>
</dg:DataGrid.Columns>
</dg:DataGrid>
</Border>
</Grid>
<Button Grid.Row="1" Height="90" >hello world</Button>
</Grid>
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
并且C#代码如下
public partial class Window1 : Window
{
public …Run Code Online (Sandbox Code Playgroud) 今天,我接受了"Microsoft Workflow Foundation"的培训.
虽然我认为这个想法很简洁,但我仍然认为它是一个概念验证而不是现实生活中的解决方案.构建一个完整的应用程序而不必键入一行代码(或只有少数代码)似乎是错误的.
你有没有使用过这种技术?如果是的话,它真的适合大公司的项目吗?您使用它有哪些缺点/优点?
我有一个方法,我试图进行单元测试.此方法将参数作为ArrayList并使用它执行操作.我试图定义的模拟是:
ArrayList<String> mocked = mock(ArrayList.class);
Run Code Online (Sandbox Code Playgroud)
这给出了[未经检查]未经检查的转换"警告.
ArrayList<String> mocked = mock(ArrayList<String>.class);
Run Code Online (Sandbox Code Playgroud)
给了我一个错误.
任何人都想关心我做错了什么?
我有一个函数,其中我有保持的字符串(例如一个容器vector<string>,set<string>,list<string>给定的开始迭代和结束迭代器),并且,经过迭代范围处理所述字符串.
目前该函数声明如下:
template< typename ContainerIter>
void ProcessStrings(ContainerIter begin, ContainerIter end);
Run Code Online (Sandbox Code Playgroud)
现在,这将接受任何符合实现operator*,前缀operator++和函数体中其他调用的隐式接口的类型.
我真正想做的是有一个像下面那样明确限制输入量的定义(伪代码警告):
template< typename Container<string>::iterator>
void ProcessStrings(Container<string>::iterator begin, Container<string>::iterator end);
Run Code Online (Sandbox Code Playgroud)
所以我可以这样使用它:
vector<string> str_vec;
list<string> str_list;
set<SomeOtherClass> so_set;
ProcessStrings(str_vec.begin(), str_vec.end()); // OK
ProcessStrings(str_list.begin(), str_list.end()); //OK
ProcessStrings(so_set.begin(), so_set.end()); // Error
Run Code Online (Sandbox Code Playgroud)
本质上,我想要做的是限制函数规范,使函数的用户明白它接受的内容,如果代码编译失败,他们会得到一条消息,他们使用了错误的参数类型而不是XXX类无法找到XXX函数的函数体.
所以,为了更好地自己,我想知道哪种方法更适合设置变量:
代码:http://pastie.org/private/jkw9dxplv0ixovvc0omq
方法1:在if语句中设置end变量
-要么-
方法2:设置默认变量,只在需要时更改它的值.
我希望这是有道理的.
预先感谢!
我喜欢Scala提出的运算符优先级,但在极少数情况下,未经修改的规则可能不方便,因为在命名方法时有限制.有没有办法为Scala中的类/文件等定义另一个规则?如果没有,将来会解决吗?
我刚刚在Weblogic服务器上安装了Hudson,由于Free Temp Space低于1gig阈值,我遇到了离线节点的问题.现在我已经检查了我的/ tmp文件夹(想想Hudson使用它)但是它可以免费使用10gig.
有人能指出我Hudson使用的文件夹吗?我也在使用SunOS盒子.
我在Emacs中有两个操作:
在进行前两个操作时,我感觉自己像个键盘杂技演员.我认为值得尝试一些自定义键绑定和宏.
关于此定制的一些问题:
我已将Jacson libs添加到我的android项目中,现在我在控制台中收到了这样的警告:
警告:忽略没有关联的EnclosingMethod属性的匿名内部类的InnerClasses属性.(这个类可能是由一个破碎的编译器产生的.)
我试图重新编译库,但它没有帮助.当我从项目中删除这些库时,警告消失了.设备上的一切工作正常,但这让我烦恼;)
你知道任何解决方案吗?我正在使用Eclipse.
我在eclipse中使用了文件搜索功能,用替换文本替换特定的文本,其中包含工作空间中所有文件中的java方法名称.
但现在在所有这些文件中我必须添加import语句(用于解析方法名称).
是否有自动方式执行此操作而不是在所有文件中手动搜索和导入包?
PS:我不能用java重构,因为我已经改变了文本不是Java元素和组织导入选项将更改大量文件(重新排序进口),这将是有问题的,当我需要承诺,我再有手动检查差异以查看哪些文件具有实际更改而不是仅组织导入语句.