<div id="main_2_leftTreeNav" class="hlLeftNav"> <span class="heading">Categories</span> <a href="#main_2_treeKeywords_SkipLink"><img alt="Skip Navigation Links." src="/WebResource.axd?d=Se4nLfC3oQ1xFK3Wn1Pwy_biSWKKaAo9fbqY_-q1-DyYumtIJkxkclhQRNITdeq5n_utZBYJbFbOP0uM3Z94pucNk_DRXYCuXiX14LIwE5U1&t=634896662120000000" width="0" height="0" style="border-width:0px;" /></a><div id="main_2_treeKeywords" style="white-space:normal"><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><a id="main_2_treeKeywordsn0" href="javascript:TreeView_ToggleNode(main_2_treeKeywords_Data,0,document.getElementById('main_2_treeKeywordsn0'),'r',document.getElementById('main_2_treeKeywordsn0Nodes'))"><img src="/WebResource.axd?d=oWpXZ5j0UW-ie9pAuhz58ZUOTVNUJ18c0VxYXZ19Bij_1RK44f-lNHRTW5wITWK8DSd9N7LLmcFqaZb-ogv7zmisPnd3oYg48lQHB-GgyZjOEwLUxIcVoBV_2pEvu9_X0&t=634896662120000000" alt="Expand Codes and Standards (1)" style="border-width:0;" /></a></td><td><a href="javascript: void(0);" id="main_2_treeKeywordst0" style="text-decoration:none;">Codes and Standards (1)</a></td> </tr></table><div id="main_2_treeKeywordsn0Nodes" style="display:none;"> <table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Amending+materials" id="main_2_treeKeywordst1" style="text-decoration:none;">Amending materials</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Building+Construction+(Committees)" id="main_2_treeKeywordst2" style="text-decoration:none;">Building Construction (Committees)</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Codes+and+Standards" id="main_2_treeKeywordst3" style="text-decoration:none;">Codes and Standards</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Comments" id="main_2_treeKeywordst4" style="text-decoration:none;">Comments</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|FI" id="main_2_treeKeywordst5" style="text-decoration:none;">FI</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Meeting+minutes" id="main_2_treeKeywordst6" style="text-decoration:none;">Meeting minutes</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Meetings" id="main_2_treeKeywordst7" style="text-decoration:none;">Meetings</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|NFPA+220+Standard+on+Types+of+Building+Construction" id="main_2_treeKeywordst8" style="text-decoration:none;">NFPA 220 Standard on Types of Building Construction</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|NFPA+5000+Building+Construction+and+Safety+Code" id="main_2_treeKeywordst9" style="text-decoration:none;">NFPA 5000 Building Construction and Safety Code</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|NFPA+90A+Standard+for+the+Installation+of+Air-Conditioning+and+Ventilating+Systems" id="main_2_treeKeywordst10" style="text-decoration:none;">NFPA 90A Standard for the Installation of Air-Conditioning and Ventilating Systems</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Proposals" id="main_2_treeKeywordst11" style="text-decoration:none;">Proposals</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|ROC" id="main_2_treeKeywordst12" style="text-decoration:none;">ROC</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Task+groups" id="main_2_treeKeywordst13" style="text-decoration:none;">Task groups</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Technical+committees" id="main_2_treeKeywordst14" style="text-decoration:none;">Technical committees</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=9seEl8Xn49eY692Z98fN3Cg7sBxxLaMr4wmXwy4LHH1L3wcXlVDO6IVRpwa82AGo0-2bDSURlkjpvhg1J5sOco_IEaJApIbmxYclN6lcYKvr4ygE_I0dM4YxG3YPgdbm0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|TIA" id="main_2_treeKeywordst15" style="text-decoration:none;">TIA</a></td> </tr> </table></div><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><a id="main_2_treeKeywordsn16" href="javascript:TreeView_ToggleNode(main_2_treeKeywords_Data,16,document.getElementById('main_2_treeKeywordsn16'),'t',document.getElementById('main_2_treeKeywordsn16Nodes'))"><img src="/WebResource.axd?d=XR8-rAvbKRTf8GHfSCcnUbrpRlMu5m4iL8WJVW7pppENaNwAbt75tLXqFPpIE8CGOMXrkPmmltsT7x-BbfH_5xjpw2IBq872Imi8rXM6hU_mBaszBclqfqzoK7-FgPh50&t=634896662120000000" alt="Expand Geographic (1)" style="border-width:0;" /></a></td><td><a href="javascript: void(0);" id="main_2_treeKeywordst16" style="text-decoration:none;">Geographic (1)</a></td> </tr></table><div id="main_2_treeKeywordsn16Nodes" style="display:none;"> <table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=9seEl8Xn49eY692Z98fN3Cg7sBxxLaMr4wmXwy4LHH1L3wcXlVDO6IVRpwa82AGo0-2bDSURlkjpvhg1J5sOco_IEaJApIbmxYclN6lcYKvr4ygE_I0dM4YxG3YPgdbm0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Regional" id="main_2_treeKeywordst17" style="text-decoration:none;">Regional</a></td> </tr> </table></div><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><a id="main_2_treeKeywordsn18" href="javascript:TreeView_ToggleNode(main_2_treeKeywords_Data,18,document.getElementById('main_2_treeKeywordsn18'),'t',document.getElementById('main_2_treeKeywordsn18Nodes'))"><img src="/WebResource.axd?d=XR8-rAvbKRTf8GHfSCcnUbrpRlMu5m4iL8WJVW7pppENaNwAbt75tLXqFPpIE8CGOMXrkPmmltsT7x-BbfH_5xjpw2IBq872Imi8rXM6hU_mBaszBclqfqzoK7-FgPh50&t=634896662120000000" alt="Expand News and information (1)" style="border-width:0;" /></a></td><td><a href="javascript: void(0);" id="main_2_treeKeywordst18" style="text-decoration:none;">News and information (1)</a></td> </tr></table><div id="main_2_treeKeywordsn18Nodes" style="display:none;"> <table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Newsletters" id="main_2_treeKeywordst19" style="text-decoration:none;">Newsletters</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Publications" id="main_2_treeKeywordst20" style="text-decoration:none;">Publications</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=9seEl8Xn49eY692Z98fN3Cg7sBxxLaMr4wmXwy4LHH1L3wcXlVDO6IVRpwa82AGo0-2bDSURlkjpvhg1J5sOco_IEaJApIbmxYclN6lcYKvr4ygE_I0dM4YxG3YPgdbm0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Speaking+engagements" id="main_2_treeKeywordst21" style="text-decoration:none;">Speaking engagements</a></td> </tr> </table></div><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><a id="main_2_treeKeywordsn22" href="javascript:TreeView_ToggleNode(main_2_treeKeywords_Data,22,document.getElementById('main_2_treeKeywordsn22'),'t',document.getElementById('main_2_treeKeywordsn22Nodes'))"><img src="/WebResource.axd?d=XR8-rAvbKRTf8GHfSCcnUbrpRlMu5m4iL8WJVW7pppENaNwAbt75tLXqFPpIE8CGOMXrkPmmltsT7x-BbfH_5xjpw2IBq872Imi8rXM6hU_mBaszBclqfqzoK7-FgPh50&t=634896662120000000" alt="Expand People (1)" style="border-width:0;" /></a></td><td><a href="javascript: void(0);" id="main_2_treeKeywordst22" style="text-decoration:none;">People (1)</a></td> </tr></table><div id="main_2_treeKeywordsn22Nodes" style="display:none;"> <table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|McElvaney%2c+Joe" id="main_2_treeKeywordst23" style="text-decoration:none;">McElvaney, Joe</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|People" id="main_2_treeKeywordst24" style="text-decoration:none;">People</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"><img src="/WebResource.axd?d=MNCBYQFSVGnhmQQF2-M1qyZHbZKdij3t1OXlU2kyLaEJS3bgk969yoXks1PGLEbh8rHwsU-s38pZc24JAli6oZEyMB3ZiKimIsDb-f7gT_lfEotXCGqfEDLWiaoiB-II0&t=634896662120000000" alt="" /></div></td><td><img src="/WebResource.axd?d=9seEl8Xn49eY692Z98fN3Cg7sBxxLaMr4wmXwy4LHH1L3wcXlVDO6IVRpwa82AGo0-2bDSURlkjpvhg1J5sOco_IEaJApIbmxYclN6lcYKvr4ygE_I0dM4YxG3YPgdbm0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Schiffer%2c+Brad" id="main_2_treeKeywordst25" style="text-decoration:none;">Schiffer, Brad</a></td> </tr> </table></div><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><a id="main_2_treeKeywordsn26" href="javascript:TreeView_ToggleNode(main_2_treeKeywords_Data,26,document.getElementById('main_2_treeKeywordsn26'),'l',document.getElementById('main_2_treeKeywordsn26Nodes'))"><img src="/WebResource.axd?d=NAkLd3kTFZBpwACufivco1Ih_lWG2DQSRy_J1UNio1p-Mn-Qq2jxPLBpikZW7kpNAwegiBNYM7noeUr3L-roTC3vIiqYOZabM8ocgFbZAJwV0OpQBNsyaQSxjIdtItWo0&t=634896662120000000" alt="Expand Topics (1)" style="border-width:0;" /></a></td><td><a href="javascript: void(0);" id="main_2_treeKeywordst26" style="text-decoration:none;">Topics (1)</a></td> </tr></table><div id="main_2_treeKeywordsn26Nodes" style="display:none;"> <table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"></div></td><td><img src="/WebResource.axd?d=orxpVU0Q57-O70FimBbmSDt7ezhSMgBO2rENkBbcA-l-amC1PmJgJweyDC7-OW-XvZffSZU52f5RsvwNaNWqGV5G5TO7Wka4IwM9gYSI-Fycam-kG4VUp8G7SxmdT1Rv0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Assembly" id="main_2_treeKeywordst27" style="text-decoration:none;">Assembly</a></td> </tr> </table><table cellpadding="0" cellspacing="0" style="border-width:0;"> <tr> <td><div style="width:20px;height:1px"></div></td><td><img src="/WebResource.axd?d=9seEl8Xn49eY692Z98fN3Cg7sBxxLaMr4wmXwy4LHH1L3wcXlVDO6IVRpwa82AGo0-2bDSURlkjpvhg1J5sOco_IEaJApIbmxYclN6lcYKvr4ygE_I0dM4YxG3YPgdbm0&t=634896662120000000" alt="" /></td><td><a href="/search_results?searchStr=supplement&keyword=Building+Construction+(Committees)|Combustible+material" id="main_2_treeKeywordst28" style="text-decoration:none;">Combustible material</a></td> </tr> </table></div>I have the following version of your ASP.NET AJAX controls and experiencing a rather frustrating issue. I would like to use horizontal scrolling and having six frozen columns because we have over 20 columns in our gird..
When I have the following settings below the grid does not expand 100% on each side. It will only expand to fill in the whole area when I do one of two things.
In order to avoid this unpleasant view I have had to turn UseStaticHeaders to false.
There has got to be another way, I want the headers to be static.
We are currently using Telerik version 2013.1.220.35
Here are the client settings we are using
<ClientSettings AllowDragToGroup="True" ClientEvents-OnRowSelecting="CancelNonInputSelect" ClientEvents-OnRowDeselecting="CancelNonInputSelect"> <Resizing AllowColumnResize="True" AllowRowResize="False" ResizeGridOnColumnResize="False" ClipCellContentOnResize="True" EnableRealTimeResize="False" /> <Scrolling AllowScroll="True" UseStaticHeaders="True" SaveScrollPosition="True" FrozenColumnsCount="6" /> <Selecting AllowRowSelect="True" /> </ClientSettings><asp:ScriptManager ID="scriptManager" runat="server"> </asp:ScriptManager> <asp:PlaceHolder ID="holder" Visible="true" runat="server"></asp:PlaceHolder> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM [table]"></asp:SqlDataSource> <telerik:RadAjaxPanel ID="ajaxPanel" EnableAJAX="false" runat="server"> </telerik:RadAjaxPanel>protected void Page_Init(object sender, EventArgs e) { RadGrid grid = new RadGrid(); grid.ID = "RadGrid1"; grid.MasterTableView.DataSourceID = "SqlDataSource1"; grid.MasterTableView.DataKeyNames = new string[] { "Record_ID" }; grid.Skin = "Default"; grid.PageSize = 10; grid.AllowPaging = true; grid.PagerStyle.Mode = GridPagerMode.NextPrevAndNumeric; grid.AutoGenerateColumns = false; grid.AllowFilteringByColumn = true; GridBoundColumn boundColumn = new GridBoundColumn(); grid.MasterTableView.Columns.Add(boundColumn); boundColumn.DataField = "Record_ID"; boundColumn.HeaderText = "Record_ID ID"; boundColumn.UniqueName = "Record_ID"; NewTemplateColumn templateColumn = new NewTemplateColumn(); templateColumn.ItemTemplate = new TemplateColumn(); grid.MasterTableView.Columns.Add(templateColumn); templateColumn.DataField = "Client_Name"; templateColumn.HeaderText = "Client Name"; templateColumn.UniqueName = "Client_Name"; NewTemplateColumn templateColumn1 = new NewTemplateColumn(); templateColumn1.ItemTemplate = new TemplateColumn(); grid.MasterTableView.Columns.Add(templateColumn1); templateColumn1.DataField = "Billing_Atty"; templateColumn1.HeaderText = "Billing Attorney"; templateColumn1.UniqueName = "Billing_Atty"; NewTemplateColumn templateColumn2 = new NewTemplateColumn(); templateColumn2.ItemTemplate = new TemplateColumn(); grid.MasterTableView.Columns.Add(templateColumn2); templateColumn2.DataField = "Client_Number"; templateColumn2.HeaderText = "Client Number"; templateColumn2.UniqueName = "Client_Number"; ajaxPanel.Controls.Add(grid); grid.DataBind(); } } public partial class NewTemplateColumn : GridTemplateColumn { private SqlDataSource comboDataSource = new SqlDataSource(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString(), "select Client_Name FROM Matter_Subs"); //RadGrid will call this method when it initializes the controls inside the filtering item cells protected override void SetupFilterControls(TableCell cell) { base.SetupFilterControls(cell); cell.Controls.RemoveAt(0); RadComboBox combo = new RadComboBox(); combo.ID = ("RadComboBox1" + this.UniqueName); combo.ShowToggleImage = false; //combo.Skin = "Office2007"; combo.EnableLoadOnDemand = true; combo.AutoPostBack = true; combo.MarkFirstMatch = true; combo.Height = Unit.Pixel(100); combo.ItemsRequested += this.list_ItemsRequested; combo.SelectedIndexChanged += this.list_SelectedIndexChanged; cell.Controls.AddAt(0, combo); cell.Controls.RemoveAt(1); RadComboBox combo1 = new RadComboBox(); combo1.ID = ("RadComboBox2" + this.UniqueName); combo1.ShowToggleImage = false; //combo.Skin = "Office2007"; combo1.EnableLoadOnDemand = true; combo1.AutoPostBack = true; combo1.MarkFirstMatch = true; combo1.Height = Unit.Pixel(100); combo1.ItemsRequested += this.list1_ItemsRequested; combo1.SelectedIndexChanged += this.list1_SelectedIndexChanged; cell.Controls.AddAt(0, combo1); cell.Controls.RemoveAt(1); RadComboBox combo2 = new RadComboBox(); combo2.ID = ("RadComboBox3" + this.UniqueName); combo2.ShowToggleImage = false; //combo.Skin = "Office2007"; combo2.EnableLoadOnDemand = true; combo2.AutoPostBack = true; combo2.MarkFirstMatch = true; combo2.Height = Unit.Pixel(100); combo2.ItemsRequested += this.list2_ItemsRequested; combo2.SelectedIndexChanged += this.list1_SelectedIndexChanged; cell.Controls.AddAt(0, combo2); cell.Controls.RemoveAt(1); } //RadGrid will cal this method when the value should be set to the filtering input control(s) protected override void SetCurrentFilterValueToControl(TableCell cell) { base.SetCurrentFilterValueToControl(cell); RadComboBox combo = (RadComboBox)cell.Controls[0]; if ((this.CurrentFilterValue != string.Empty)) { combo.Text = this.CurrentFilterValue; } RadComboBox combo1 = (RadComboBox)cell.Controls[0]; if ((this.CurrentFilterValue != string.Empty)) { combo1.Text = this.CurrentFilterValue; } RadComboBox combo2 = (RadComboBox)cell.Controls[0]; if ((this.CurrentFilterValue != string.Empty)) { combo2.Text = this.CurrentFilterValue; } } //RadGrid will cal this method when the filtering value should be extracted from the filtering input control(s) protected override string GetCurrentFilterValueFromControl(TableCell cell) { RadComboBox combo = (RadComboBox)cell.Controls[0]; return combo.Text; } private void list_ItemsRequested(object o, RadComboBoxItemsRequestedEventArgs e) { ((RadComboBox)o).DataValueField = "Client_Name"; ((RadComboBox)o).DataTextField = "Client_Name"; comboDataSource.SelectCommand = "SELECT DISTINCT Client_Name FROM table WHERE Client_Name LIKE '" + e.Text + "%'"; ((RadComboBox)o).DataSource = comboDataSource.Select(new DataSourceSelectArguments()); ((RadComboBox)o).DataBind(); } private void list_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e) { GridFilteringItem filterItem = (GridFilteringItem)((RadComboBox)o).NamingContainer; if ((this.UniqueName == "Client_Name")) { //this is filtering for integer column type filterItem.FireCommandEvent("Filter", new Pair("EqualTo", this.UniqueName)); } //filtering for string column type filterItem.FireCommandEvent("Filter", new Pair("Contains", this.UniqueName)); } private void list1_ItemsRequested(object o1, RadComboBoxItemsRequestedEventArgs e1) { ((RadComboBox)o1).DataValueField = "Billing_Atty"; ((RadComboBox)o1).DataTextField = "Billing_Atty"; comboDataSource.SelectCommand = "SELECT DISTINCT Billing_Atty FROM table WHERE Billing_Atty LIKE '" + e1.Text + "%'"; ((RadComboBox)o1).DataSource = comboDataSource.Select(new DataSourceSelectArguments()); ((RadComboBox)o1).DataBind(); } private void list1_SelectedIndexChanged(object o1, RadComboBoxSelectedIndexChangedEventArgs e1) { GridFilteringItem filterItem = (GridFilteringItem)((RadComboBox)o1).NamingContainer; if ((this.UniqueName == "Billing_Atty")) { //this is filtering for integer column type filterItem.FireCommandEvent("Filter", new Pair("EqualTo", this.UniqueName)); } //filtering for string column type filterItem.FireCommandEvent("Filter", new Pair("Contains", this.UniqueName)); } private void list2_ItemsRequested(object o2, RadComboBoxItemsRequestedEventArgs e2) { ((RadComboBox)o2).DataValueField = "Client_Number"; ((RadComboBox)o2).DataTextField = "Client_Number"; comboDataSource.SelectCommand = "SELECT DISTINCT Client_Number FROM table WHERE Client_Number LIKE '" + e2.Text + "%'"; ((RadComboBox)o2).DataSource = comboDataSource.Select(new DataSourceSelectArguments()); ((RadComboBox)o2).DataBind(); } private void list2_SelectedIndexChanged(object o2, RadComboBoxSelectedIndexChangedEventArgs e2) { GridFilteringItem filterItem = (GridFilteringItem)((RadComboBox)o2).NamingContainer; if ((this.UniqueName == "Client_Number")) { //this is filtering for integer column type filterItem.FireCommandEvent("Filter", new Pair("EqualTo", this.UniqueName)); } //filtering for string column type filterItem.FireCommandEvent("Filter", new Pair("Contains", this.UniqueName)); } } public partial class TemplateColumn : ITemplate { public void InstantiateIn(Control container) { LiteralControl literalControl = new LiteralControl(); literalControl.ID = "literalControl"; literalControl.DataBinding += new EventHandler(literalControl_DataBinding); LiteralControl literalControl1 = new LiteralControl(); literalControl1.ID = "literalControl1"; literalControl1.DataBinding += new EventHandler(literalControl1_DataBinding); LiteralControl literalControl2 = new LiteralControl(); literalControl2.ID = "literalControl2"; literalControl2.DataBinding += new EventHandler(literalControl2_DataBinding); CheckBox box = new CheckBox(); box.ID = "boxControl"; box.DataBinding += new EventHandler(box_DataBinding); container.Controls.Add(literalControl); container.Controls.Add(literalControl1); container.Controls.Add(literalControl2); container.Controls.Add(box); } void box_DataBinding(object sender, EventArgs e) { CheckBox box = (CheckBox)sender; GridDataItem container = box.NamingContainer as GridDataItem; if (container != null) box.Checked = (bool)((DataRowView)container.DataItem)["Flag"]; else { GridEditFormItem editFormContainer = box.NamingContainer as GridEditFormItem; box.Enabled = (bool)((DataRowView)editFormContainer.DataItem)["Flag"]; } } protected void literalControl_DataBinding(object sender, EventArgs e) { LiteralControl l = (LiteralControl)sender; GridDataItem container = l.NamingContainer as GridDataItem; if (container != null) { l.Text = ((DataRowView)container.DataItem)["Client_Name"].ToString(); } else { GridEditFormItem editFormContainer = l.NamingContainer as GridEditFormItem; l.Text = ((DataRowView)editFormContainer.DataItem)["Client_Name"].ToString(); } } protected void literalControl1_DataBinding(object sender, EventArgs e) { LiteralControl lc1 = (LiteralControl)sender; GridDataItem container1 = lc1.NamingContainer as GridDataItem; if (container1 != null) { lc1.Text = ((DataRowView)container1.DataItem)["Billing_Atty"].ToString(); } else { GridEditFormItem editFormContainer = lc1.NamingContainer as GridEditFormItem; lc1.Text = ((DataRowView)editFormContainer.DataItem)["Billing_Atty"].ToString(); } } protected void literalControl2_DataBinding(object sender, EventArgs e) { LiteralControl lc2 = (LiteralControl)sender; GridDataItem container2 = lc2.NamingContainer as GridDataItem; if (container2 != null) { lc2.Text = ((DataRowView)container2.DataItem)["Client_Number"].ToString(); } else { GridEditFormItem editFormContainer = lc2.NamingContainer as GridEditFormItem; lc2.Text = ((DataRowView)editFormContainer.DataItem)["Client_Number"].ToString(); } }
Yesterday I was doing something and found this unexpected behavior with the Telerik controls as soon as override the page render. I see the grids sorting and telerik ajax not working when I have coded the following code.
I would really appreciate if any one has clue why this is happening for the following code snippet.
protected override void Render(HtmlTextWriter writer)
{
// setup a TextWriter to capture the markup
TextWriter tw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(tw);
// render the markup into our surrogate TextWriter
base.Render(htw);
// get the captured markup as a string
string pageSource = tw.ToString();
MatchCollection matches = Regex.Matches(pageSource, @"\[\!\[(.*?)\]\!\]");
List<string> finishedCaptures = new List<string>();
// Use foreach loop.
foreach (Match match in matches)
{
foreach (Capture capture in match.Captures)
{
if (!finishedCaptures.Contains(capture.Value))
{
pageSource = pageSource.Replace(capture.Value, ConfigFactory.Instance[capture.Value.Trim(new char[] { '[', ']', '!' })]);
finishedCaptures.Add(capture.Value);
}
}
}
writer.Write(pageSource);
}
-Thanks for your precious time.
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadGridProductionOrders"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGridProductionOrders" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager><telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxy1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="Panel1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="Panel1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManagerProxy>
<tr> <td> </td> <td colspan="3" style="max-width:895px;"> <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" CellSpacing="0" GridLines="Vertical" Height="285"> <ClientSettings> <Scrolling AllowScroll="true" UseStaticHeaders="true"/> </ClientSettings> stuff ommitted for readability </td></tr>