Silverlight中DataGrid数据绑定换行如何去掉?

作者:小菜 更新时间:2025-03-16 点击数:
简介:今天做Silverlight显示数据的时候,前台DataGrid 做数据绑定显示的时候,需要把数据中的换行去掉,这里根据以前对图片处理的类,构造了一个处理换行的

【菜科解读】

今天做Silverlight显示数据的时候,前台DataGrid 做数据绑定显示的时候,需要把数据中的换行去掉,这里根据以前对图片处理的类,构造了一个处理换行的类。

类代码: 引用接口IValueConverter

using System;

using System.Windows.Data;

namespace 命名空间

{

public class ToPercentConverter : IValueConverter

{

#region 在载入数据的时候将数据去掉回车符

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)

{

if (value.ToString().Contains("\r"))

return value.ToString().Replace("\r", "");

else

return value;

}

//在页面上操作的时候,将图片类型转换为数据,这里只有在TwoWay的时候才有用

public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)

{

return value.ToString().Replace("\r", ""); } #endregion

}

}

}

用户控件引用: 首先引用:xmlns:local="clr-namespace:命名空间",然后引用资源: 在需要转换的地方调用Converter={StaticResource ToPercentConverter}如下:

这里只用一个字段为了大家看得清晰。

涉及知识点:IValueConverter接口,引用空间,DataGrid绑定数据,绑定数据(OneTime、OneWay、TowWay)方式。

Silverlight,中,DataGrid,数据,绑定,换

如何在浏览器中调试less&sass

Sass与LESS让人可以以类似编程的方式书写CSS,让我们有更好的方式管理CSS代码。

比如把一些功能函数抽出来,单独放一个文件。

页面一般都含有一些公共模块,把模块也可以抽离出来单独存放,等等。

很多同学都已经开始在项目使用less或sass,它们用起来确实是很爽,大大提高效率呀。

less & sass 都无法在浏览器中直接执行,需要变成CSS。

有时候想调试样式,我们看到的行号是css代码的行号,并不能直接对应到less&sass文件中,修改起来总是不方便。

看到less&sass这么受欢迎,热情的开发者们给firefox开发了一个插件FireSass,后来chrome也跟上了,开启一个实验性功能支持sass调试。

具体设置如下:编译时添加参数:sass开启debug-info选项:sass demo.sass demo.css –debug-infoless开启line-numbers:lessc demo.less demo.css –line-numbers=comments这样,编译后的css中将包含调试信息:浏览器设置:firefox执行安装FireSass即可。

chorme:地址栏打开chrome://flags/,启用开发者工具实验(DeveloperToolsexperiments.)。

重启浏览器后,打开开发者工具的设置选项卡,Experiments -> Support for sass 勾选。

最终调试效果: 如,何在,浏览器,中,调试,less,amp,sass,Sa

Javascript中的“作用域链”知识分享

7 for(var i = 0; i发生了什么事情很多人都可能知道上例的执行结果,但是不是所有人都明白为什么会是这样的结果,包括我自己。

名词解释活动对象:一次函数调用开始的时候,javascript解释器会收集函数体中的所有局部变量(以var形式声明的变量),将这些局部变量存储到一个称为“活动对象”的对象里,所有变量都初始为undefined。

代码示例1 var fun = function(){2 alert(name);3 var name = ‘段光伟‘;4 }当执行这个函数时候时(fun()),函数体还没执行到,当前的活动对象为[{ name: undefined }],因此fun()执行的结果为:函数的[scope]属性:每个函数在定义的时候(生成函数实例的时候)都会分配一个[scope]属性,这个属性指向的当前的“作用域链”。

这个属性开发人员是访问不到的,只有javascript能访问。

作用域链:当函数调用时,javascript引擎会维护一个这次调用的作用域链,这个作用域链条是函数的[scope]指向的作用域链加上函数调用时的活动对象,形式如[ 活动对象, 函数定义时的作用域链条]。

代码示例 1 var a = 1; 2 //步骤1:[ { a: 1, outer: undefined } ] 4 var outer = function(){ 5 //步骤3:[ { b: undefined, inner: undefined } ,{ a: 1, outer: function } ] 6 var b = 2; 7 var inner = function(){ 8 //步骤4:[ {}, { b: 2, inner: function } ,{ a: 1, outer: function } ] 9 return a + b;12 //步骤3:[ { b: 2, inner: function } ,{ a: 1, outer: function } ]13 return inner();16 //步骤2:[ { a: 1, outer: function } ]17 outer();作用域链规则规则1javascript一般运行在一定的宿主中,每个宿主都会提供一个“全局对象”,或者叫“全局活动对象”,这个全局对象是所有作用域链的根节点。

规则2“取值操作”(如:alert(xxxVar))的规则是,沿着作用域链依次查找名称为“xxxVar”的变量,返回第一个找到的值,如果找不到就抛出异常(ReferenceError: xxxVar is not defined)。

规则3“赋值操作”(如:xxxVar = ‘段光伟‘)的规则是,沿着作用域链依次查找名称为“xxxVar”的变量,覆盖第一个找到的值,如果找不到就将“xxxVar”添加到全局对象中。

备注“闭包”这个概念就是通过“作用域链”实现的,而C#是通过编译器实现的,.NET并不支持。

Javascript,中的,“,作用域链,”,知识,分享,代

加入收藏
               

Silverlight中DataGrid数据绑定换行如何去掉?

点击下载文档

格式为doc格式

  • 账号登录
社交账号登录