ورود

View Full Version : سوال: کسی میدونه code progect قسمت نمایش فرم رو چطور پیاده سازی کرده؟



daffy_duck376
شنبه 27 شهریور 1389, 18:35 عصر
کسی میتونه code progect کد ها چطور این طور نشون میده ؟
http://up.vatandownload.com/upimages/2010/Sep/18/code.jpg

Ali_M.Eghbaldar
شنبه 27 شهریور 1389, 19:22 عصر
سلام
اگه منظورت اون Left-Right هاست که با Editor بصورت HTML ذخیره می کنه و همونطوری میخونه !!
ولی اگه منظورت قابلیت Collapse که تو تصویرت نیست بااستفاده از Collapseible Panel Demonsytaion
ابنکارو انجام بده.

daffy_duck376
شنبه 27 شهریور 1389, 19:26 عصر
نه عزیز منظورم اون فرمت نمایش خاص است که کلمات کلیدی رو به رنگ و فرمت دیگه نشون میده مثل همین سایت برنامه نویس که کد ها رو میگذارن توی بخش کد ولی کمی بهتر!

Ali_M.Eghbaldar
شنبه 27 شهریور 1389, 19:36 عصر
وقتی شما رنگ یه نوشته مثلا قرمز کنید با یک editor مثل fckeditor مگه اونو همون طوری به HTML تبدیل نمی کنه ؟!
بازم میشه همون چیزی که بالا گفتم !!

daffy_duck376
شنبه 27 شهریور 1389, 19:39 عصر
بیبینید کسی وقتی اونجا پست میده نمیشینه دونه دونه کد ها رو رنگ هاشو عوض کنه اون رو معمولی کپی و paste میکنه سایت خودش درست نمایش میده . مثل این ببینید :

<div style="width: 779px">
<dx:ASPxRoundPanel ID="ASPxRoundPanel2" runat="server"
HeaderText="کتابهای سایت" Width="100%">
<PanelCollection>
<dx:PanelContent runat="server" SupportsDisabledAttribute="True">
<div style="height: 137px">
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" BackColor="White" BorderColor="#E7E7FF"
BorderStyle="None" BorderWidth="1px" CellPadding="3" DataKeyNames="ID"
DataSourceID="SqlDataSource1" EnableModelValidation="True"
GridLines="Horizontal" PageSize="2" Width="100%">
<AlternatingRowStyle BackColor="#F7F7F7" />
<Columns>
<asp:BoundField DataField="ID" HeaderText="کد کتاب" InsertVisible="False"
ReadOnly="True" SortExpression="ID">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="NAME" HeaderText="عنوان کتاب" SortExpression="NAME">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="WRITER" HeaderText="نویسنده" SortExpression="WRITER">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="COST" HeaderText="قیمت" SortExpression="COST">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:CommandField ButtonType="Image" SelectImageUrl="~/PICTURE/showinfo.gif"
ShowSelectButton="True">
<HeaderStyle HorizontalAlign="Center" Width="50px" />
<ItemStyle HorizontalAlign="Center" />
</asp:CommandField>
</Columns>
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<PagerSettings PageButtonCount="6" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:bookstoreConnectionString %>"
SelectCommand="SELECT [ID], [NAME], [WRITER], [COST] FROM [BOOK]">
</asp:SqlDataSource>
</div>
من رنگ ها رو عوض نکردم . چون گذاشتم وسط قسمت php این طور نمایش میده مگه نه چند خط ساده هست

<div style="width: 779px">
<dx:ASPxRoundPanel ID="ASPxRoundPanel2" runat="server"
HeaderText="کتابهای سایت" Width="100%">
<PanelCollection>
<dx:PanelContent runat="server" SupportsDisabledAttribute="True">
<div style="height: 137px">
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AutoGenerateColumns="False" BackColor="White" BorderColor="#E7E7FF"
BorderStyle="None" BorderWidth="1px" CellPadding="3" DataKeyNames="ID"
DataSourceID="SqlDataSource1" EnableModelValidation="True"
GridLines="Horizontal" PageSize="2" Width="100%">
<AlternatingRowStyle BackColor="#F7F7F7" />
<Columns>
<asp:BoundField DataField="ID" HeaderText="کد کتاب" InsertVisible="False"
ReadOnly="True" SortExpression="ID">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="NAME" HeaderText="عنوان کتاب" SortExpression="NAME">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="WRITER" HeaderText="نویسنده" SortExpression="WRITER">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="COST" HeaderText="قیمت" SortExpression="COST">
<HeaderStyle HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Center" />
</asp:BoundField>
<asp:CommandField ButtonType="Image" SelectImageUrl="~/PICTURE/showinfo.gif"
ShowSelectButton="True">
<HeaderStyle HorizontalAlign="Center" Width="50px" />
<ItemStyle HorizontalAlign="Center" />
</asp:CommandField>
</Columns>
<FooterStyle BackColor="#B5C7DE" ForeColor="#4A3C8C" />
<HeaderStyle BackColor="#4A3C8C" Font-Bold="True" ForeColor="#F7F7F7" />
<PagerSettings PageButtonCount="6" />
<PagerStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" HorizontalAlign="Right" />
<RowStyle BackColor="#E7E7FF" ForeColor="#4A3C8C" />
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="#F7F7F7" />
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:bookstoreConnectionString %>"
SelectCommand="SELECT [ID], [NAME], [WRITER], [COST] FROM [BOOK]">
</asp:SqlDataSource>
</div>

Himalaya
شنبه 27 شهریور 1389, 20:41 عصر
نه عزیز منظورم اون فرمت نمایش خاص است که کلمات کلیدی رو به رنگ و فرمت دیگه نشون میده مثل همین سایت برنامه نویس که کد ها رو میگذارن توی بخش کد ولی کمی بهتر

با css و java .
مثلا این کد جاوایی هست که تو همین سایت واسه کدهای C#‎‎‎‎ استفاده میشه. البته همش این نیست ها.


SyntaxHighlighter.brushes.CSharp = function()
{
var keywords = 'abstract as base bool break byte case catch char checked class const ' +
'continue decimal default delegate do double else enum event explicit ' +
'extern false finally fixed float for foreach get goto if implicit in int ' +
'interface internal is lock long namespace new null object operator out ' +
'override params private protected public readonly ref return sbyte sealed set ' +
'short sizeof stackalloc static string struct switch this throw true try ' +
'typeof uint ulong unchecked unsafe ushort using virtual void while';
function fixComments(match, regexInfo)
{
var css = (match[0].indexOf("///") == 0)
? 'color1'
: 'comments'
;

return [new SyntaxHighlighter.Match(match[0], match.index, css)];
}
this.regexList = [
{ regex: SyntaxHighlighter.regexLib.singleLineCComments, func : fixComments }, // one line comments
{ regex: SyntaxHighlighter.regexLib.multiLineCComments, css: 'comments' }, // multiline comments
{ regex: SyntaxHighlighter.regexLib.doubleQuotedString, css: 'string' }, // strings
{ regex: SyntaxHighlighter.regexLib.singleQuotedString, css: 'string' }, // strings
{ regex: /^\s*#.*/gm, css: 'preprocessor' }, // preprocessor tags like #region and #endregion
{ regex: new RegExp(this.getKeywords(keywords), 'gm'), css: 'keyword' } // C#‎‎‎‎ keyword
];

this.forHtmlScript(SyntaxHighlighter.regexLib.aspS criptTags);
};
SyntaxHighlighter.brushes.CSharp.prototype = new SyntaxHighlighter.Highlighter();
SyntaxHighlighter.brushes.CSharp.aliases = ['C#‎‎‎‎', 'c-sharp', 'csharp'];


کدهای copy paste شده هم تو تگ pre قرار میگیرن (تا تورفتگی ها حفظ بشه) که اون هم یه استایل داره.
مثلا تو این صفحه پست دوم رو ببین. بعد تو سورس اون تگ pre مربوط به این قسمت رو یه نگاهی بنداز.
http://barnamenevis.org/forum/showthread.php?p=1047929#post1047929
تو هدر 10، 15 تا فایل جاوای پشت سر هم هست که هر کدوم واسه یه زبانه


<!-- begin PRO Syntax www.seomax.info (http://www.seomax.info) -->
<script type="text/javascript" src="clientscript/pro_syntax/shCore.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushBash.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushCpp.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushCSharp.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushCss.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushDelphi.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushDiff.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushGroovy.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushJava.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushJScript.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushPerl.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushPhp.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushPlain.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushPython.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushRuby.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushScala.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushSql.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushVb.js"></script>
<script type="text/javascript" src="clientscript/pro_syntax/shBrushXml.js"></script>


اما در مورد code project
کلا از css استفاده کرده. مثلا این تیکه کد رو در نظر بگیر

public static string EncryptRijndaelManaged(string value)

سورسش شده این. کلمه به کلمه کد بررسی شده و نسبت به نوع کلمه از تگ span همراه css مخصوص اون کلمه استفاده کرده


<spanclass="code-keyword">public</span> <spanclass="code-keyword">static</span> <spanclass="code-keyword">string</span> EncryptRijndaelManaged(<spanclass="code-keyword">string</span> value)



یا این

// must create your own keys and ivs
که سورس این بوده


<spanclass="code-comment">//</span><spanclass="code-comment"> must create your own keys and ivs
</span>

و البته تگ pre هم که جای خودشو داره. همه این کدا بین این تگ قرار گرفتن


<pre lang="cs">
</pre>

daffy_duck376
یک شنبه 28 شهریور 1389, 05:43 صبح
بسیار ممنون از جواب کاملتون . حالا میشه بگید چطور توی صفحه میتونم کدهای مثلا Vb از #C جدا کنم . شرمنده سواد من زیاد نیست:خجالت: منظورم اینه که چطور مقادیر یه label رو بگم برو از وبی استایل بگیر و متن یه لیبل دیگه رو بگم برو از سی شارپ ؟

Himalaya
یک شنبه 28 شهریور 1389, 10:19 صبح
به نظرم این انتخابی هست که باید به خود کاربر محول کرد تا نوع کدهایی رو که داره ارسال میکنه خودش مشخص کنه. بعد که کدا رو ارسال کرد همراه کدها نوع کدها رو هم تو db ذخیره میکنیم و موقع بازیابی اطلاعات از جدول توسط اون نوع تشخیص داده میشه که از کدوم css باید استفاده بشه(البته این نظر شخصیمه). یه چیزی تو مایه های همین سایت (بخش کد و کد php و ...)یا مثلا قرار دادن یه کد مشخص تو ابتدا و انتهای سورس مورد نظر ... فرض کن سورس ما حاوی چند تیکه کد باشه و هر تیکه کد مربوط به یک زبان. اونوقت روش اول به نظرم جوابگو نیست. مگه اینکه بخوای سورس هر زبان رو جدا ذخیره کنی تا بتونی واسش نوع هم در نظر بگیری. تو روش دوم کل سورس رو ذخیره میکنی و ( هر زبانی) فقط ابتدا و انتهای هر زبان رو باید با یه کد مشخص تعیین کنی (حتی متن معمولی رو هم (مثلا توضیحات نویسنده رو) میشه بین این کدا ذخیره کرد )

حامد مصافی
یک شنبه 28 شهریور 1389, 10:29 صبح
قبلاً همچين چيزي نوشتم

البته فكر كنم نسخه اي كه آرشيو كردم از اين كمي كامل تر باشه. اين لينك (http://www.persiangig.com/pages/download/?dl=http://blackdal.persiangig.com/Products/dNet2/CodeColorizer.rar)را ببينيد