发表评论
#5楼 [
楼主]2007-09-29 12:56 |
道不远人,指看似复杂的技术并不一定难以掌握
2008年8月19日凌晨
怎么到2008年了!呵呵
书的内容看起来挺丰富的,不知道深度如何。先恭喜啦!
福州这边现在有的卖了吗,我在网上订购 ,怎么输入邮箱跟姓名就没下文了
#11楼 [
楼主]2007-09-29 14:23 |
@fa
出版社会提供几章试读的
#4楼 回复 引用 查看
书名挺奇怪的,这个“远”字如何理解?
2007-09-29 12:27 | Phinecos(洞庭散人)
远在此处作动词,意为疏远!
呵呵, 这本比之前某人那本, 好多了吧.....最重要的是, 价格不像人家那么牛贵..
最近涉及到一些控件开发,发现其实这方面深入的资料很少,能看到这样的书很高兴。
恭喜,看了这个书目,感觉书的内容应该是很不错,到时一定买而看之!!
以前从来就不晓得在IT业还有--"道"和"术"这样的新鲜词汇,看完推荐序后才领悟!感觉书名中"道不远人"四个字很有深度和内涵,为我们学习编程语言指明了方向!
赵劼
2008年8月19日凌晨
居然超越时空了....
#39楼 [
楼主]2007-10-09 19:25 |
@Justin
有人在北京买到了,网上还没有
谭振林老师,恭喜您的书出版啦;
小弟刚入道才两年,.net了解还不是很多,这书对我有帮助,
我买了,也对你支持一下;想在您这里直接买;
想要您的签名留言,这样我学的会更有信心!
速回!
#41楼 [
楼主]2007-10-10 08:15 |
@人一已百
签名没问题,只是我这里没有书卖啊,我不是卖书的,你先买了,我再签,好不好?
后期好像会有签名售书会,但不知要到什么时候,活动也要搞了才能算数,现在他们出版社也资源紧张,说的话也不能全信,而且这种活动一般在书城搞,买书没折的。
Thin 兄,您的新書我已經拖上海的朋友幫我買到了,內容真的不錯。雖然寄到台灣運費比這本書貴~哈,不過下次您有新書我一定會在捧場的...
#45楼 [
楼主]2007-10-10 21:23 |
@Innovation.NET
看到您的留言,突然我感到有些内疚,因为自己拿到书后看了看,觉得要不是为了赶时间,可以将内容组织得更好些,更容易理解些。
如果以后还写书的话,应该要投入更多精力才是。
《道不远人--深入解析ASP.NET 2.0控件开发》
THIN 兄:
您客氣了,內容真的很棒,這本書我從8月就叫上海的朋友一直幫我留意了,直到前幾天朋友跟我說看到了,我才請他幫我購買並火速寄回台灣,這一我第一次買簡體書,當然也怕買到一本不好的書,可是看了以後內容果然值回票價,下次THIN兄若再出書,我一定會在捧場。
看到書中THIN兄與陳南海先生,聊天時說的這一句話,讓我有很深的感觸
>>
.NET本身就像倚天劍,但往往是使用者功夫不深而局限了他的威力,現在我們手中已經有倚天劍,我們還需要一身的好功夫才能立於不敗之地,要不然倚天劍也只能當菜刀用了。
>>希望各位讀者與走在技術前線的人,都可以好好運用.NET這把倚天劍。
看到谭兄的付出终于有了点滴的回报,深感安慰。
你的无私付出,对这个社会的责任感以及博大胸怀,为人们树立了楷模,你就是一个标杆,
带领我们走向更远的方向,攀登更高的山峰。祝贺你的书畅销,好人一生平安。
马上去购买该书,读完后感觉棒极了,很多以前没有解决的问题,在这里都一一得到很详尽的解答。
太感觉作者了,该书太值得珍藏了。而且是物超所值的。
#51楼 [
楼主]2007-10-15 20:55 |
@陶睿
暂时还买不到,过来深圳买
#53楼 [
楼主]2007-10-17 11:17 |
@kansei
最好还是网上买吧,便宜
当当网上有一本老外写的《ASP.NET2.0服务器控件与组件开发高级编程》,不知道写的咋样,我正在考虑都买,还是只买你的,呵呵。
我以前写过TreeView、Menu、分页等控件,从我的经验来看,写控件是很需要综合能力的,前后台都要懂,很能锻炼技术。
楼主的每篇文章都写的超级棒,很想认识一下,如果能来上海就好了,上海治安很不错的。
#55楼 [
楼主]2007-10-17 19:47 |
@灰灰狼
那本我没有细看,内容组织方式和我的不同,内容也有很大不同
书店有售了,我买了一本阅读,确实写得很好!谢谢作者在控件开发领域为读者提供这么好的作品!
#58楼 [
楼主]2007-10-19 21:52 |
@阿滨
如果对于ASP.NET 2.0的控件有丰富的使用经验,那么看起来会轻构很多。不过如果对各个控件没有深刻认识,那么控件知识是你迅速把握控件的一条途径。
不明白的地方你可以提出来,大家可以进一步交流
昨天去书店,想买一本ASP.Net的,扫了一眼,是博客园的,就选它了。
以前没有搞过asp.net...
在外拼杀多年,累了。看到同事们在追求“术”的过程中还能冷静下来“沉”于“道”,仿佛为自己曾经累的心找到了一丝良药,也为曾经飞远的心找到了回归的路。
现在还在入门,等学好了基础,再拜读。楼主可否推荐入门书籍
#62楼 [
楼主]2007-10-22 20:25 |
@马洋
<ASP.NET 2.0揭密是本不错的书>,虽然贵,但是内容绝对值
请问一下,怎样实现在点DropDownList的时候,弹出一个类似于GRIDVIEW一样的控件选数据?
#67楼 [
楼主]2007-10-23 20:38 |
--引用--------------------------------------------------
小小过客: 请问一下,怎样实现在点DropDownList的时候,弹出一个类似于GRIDVIEW一样的控件选数据?
--------------------------------------------------------
DropDownList本身是不能没有模板功能的,所以你可能需要实现一个支持模板的控件,而且也需要用层加上一些脚本来模拟弹出的效果,和选择的功能。
--引用--------------------------------------------------
小小过客: 再问一下,用GRIDVIEW如何分组
--------------------------------------------------------
protected override void Render(HtmlTextWriter writer)
{
// Only add the sorting UI if the GridView is sorted
if (!string.IsNullOrEmpty(ProductList.SortExpression))
{
// Determine the index and HeaderText of the column that
//the data is sorted by
int sortColumnIndex = -1;
string sortColumnHeaderText = string.Empty;
for (int i = 0; i < ProductList.Columns.Count; i++)
{
if (ProductList.Columns[i].SortExpression.CompareTo(ProductList.SortExpression) == 0)
{
sortColumnIndex = i;
sortColumnHeaderText = ProductList.Columns[i].HeaderText;
break;
}
}
// Reference the Table the GridView has been rendered into
Table gridTable = (Table)ProductList.Controls[0];
// Enumerate each TableRow, adding a sorting UI header if
// the sorted value has changed
string lastValue = string.Empty;
foreach (GridViewRow gvr in ProductList.Rows)
{
string currentValue = string.Empty;
if (gvr.Cells[sortColumnIndex].Controls.Count > 0)
{
if (gvr.Cells[sortColumnIndex].Controls[0] is CheckBox)
{
if (((CheckBox)gvr.Cells[sortColumnIndex].Controls[0]).Checked)
currentValue = "Yes";
else
currentValue = "No";
}
// ... Add other checks here if using columns with other
// Web controls in them (Calendars, DropDownLists, etc.) ...
}
else
currentValue = gvr.Cells[sortColumnIndex].Text;
if (lastValue.CompareTo(currentValue) != 0)
{
// there's been a change in value in the sorted column
int rowIndex = gridTable.Rows.GetRowIndex(gvr);
// Add a new sort header row
GridViewRow sortRow = new GridViewRow(rowIndex, rowIndex, DataControlRowType.DataRow, DataControlRowState.Normal);
TableCell sortCell = new TableCell();
sortCell.ColumnSpan = ProductList.Columns.Count;
sortCell.Text = string.Format("{0}: {1}", sortColumnHeaderText, currentValue);
sortCell.CssClass = "SortHeaderRowStyle";
// Add sortCell to sortRow, and sortRow to gridTable
sortRow.Cells.Add(sortCell);
gridTable.Controls.AddAt(rowIndex, sortRow);
// Update lastValue
lastValue = currentValue;
}
}
}
base.Render(writer);
}
我有几个地方不明白,自定义控件要引发LoadPostData方法,必备要求是什么(是需要包含一个id为this.uniqueid的控件吗),引发SaveViewState和LoadVieWState方法,必备要求是什么(write.RenderBeginTag(HtmlTextWriterTag.Input))是必须有Input吗?我改成Div,或者别的控件都不行,回传这个我当然知道是必须的.
是是说把 HtmlTextWriterTag.Input该成HtmlTextWriterTag.Div,HtmlTextWriterTag.Area等等都不行
#71楼 [
楼主]2007-10-29 22:17 |
页面会在合适的时候递归调用子控件的SaveViewState和LoadViewState,所以只要是控件,并被正确的加入到页面的表单中,它们的这些方法就会被调用(ViewState没有被禁用)
实现了IPostbackDataHandler接口的控件就能参与加载回传数据的过程。但是你要明白一点,数据怎么样才能被回传回来?
所谓回传数据就是Form表单中提交回来的数据,所以表单域(input,select)的值才能被提交回服务端(使用一些脚本也可以模拟表单提交而不需要实在的表单域)。
因此,你想你的控件