PDA

View Full Version : کلید ها Delete و edit فقط بصورت ایکون دلخواه در kendo grid



spicirmkh
دوشنبه 26 آبان 1393, 14:55 عصر
سلام

چطور می توانم کلید ها Delete و edit فقط بصورت ایکون دلخواه در kendo grid نمابش دهم

سوال دوم : یک کلیدی که عملیاتی خواصی انجام میدهد چکونه می تواتم در سطرهای یک grid kendo تعریف کنم

mehdin69
دوشنبه 26 آبان 1393, 15:36 عصر
سلام
جواب سوال اولتون اینه



@(Html.Kendo().Grid<CIMS.Models.Cardex_Material>()
.Name("grid_Balance")

.Columns(columns =>
{
columns.Command(command =>
{
command.Custom("View").Text(" ").HtmlAttributes(detailsButton);

}).Width(30);





.detail_button {
background-image: url('../images/MenuIcons/view-details-32.png');
background-position: center center;
background-repeat: no-repeat;
background-size: 20px;
width: 24px;
height: 24px;
display: inline-block;
background-color:white !important;
border-width:0px !important;
}

mehdin69
دوشنبه 26 آبان 1393, 15:37 عصر
برای سوال دوم من از Custom Template استفاده کردم

spicirmkh
دوشنبه 26 آبان 1393, 16:10 عصر
آیا این


command.Custom("View").Text(" ").HtmlAttributes(detailsButton);


به این صورت باشد



command.Custom("View").Text(" ").HtmlAttributes(new { @class = "detailsButton" })


و


.detail_button {


به این


.detailsButton {


متاسفانه هیچکدام جوا ب نداد

آیا نیاز به دستور
.Events(ev => ev.DataBound("initMenus")) است

mehdin69
سه شنبه 27 آبان 1393, 07:55 صبح
آیا این


command.Custom("View").Text(" ").HtmlAttributes(detailsButton);


به این صورت باشد



command.Custom("View").Text(" ").HtmlAttributes(new { @class = "detailsButton" })


و


.detail_button {


به این


.detailsButton {


متاسفانه هیچکدام جوا ب نداد

آیا نیاز به دستور
.Events(ev => ev.DataBound("initMenus")) است

نه همونطوری که نوشتم هست
و واسه من جواب میده

mehdin69
سه شنبه 27 آبان 1393, 10:18 صبح
نه همونطوری که نوشتم هست
و واسه من جواب میده



راهی پیدا کردم واسه تغییر
میتونی tag html رو بدی بهش
.Columns(columns =>
{
columns.Command(command =>
{
command.Custom("View").Text(" ").HtmlAttributes(mivDetailsButton);
command.Custom("Edit").Text(" ").HtmlAttributes(editButton);
command.Custom("Delete").Text(" ").HtmlAttributes(deleteButton);
command.Custom("typical").Text("<img src='../Content/images/MenuIcons/view-details-32.png' width='20' style='margin:4px'/>").HtmlAttributes(TypicalReport);
}).Width(130);

spicirmkh
سه شنبه 27 آبان 1393, 11:39 صبح
شما اینجا command.Custom("View").Text(" ").HtmlAttributes(detailsButton); تعریف کرده اید وپژول استودیو زیر عبارت detailsButton خط فرمز میکشه

شما در CSS بنام .detail_button تعریف کرداید که هیچ جای برنامه این CSS استفاده نشده است

RIG000
سه شنبه 27 آبان 1393, 11:50 صبح
.detailsButton {
این داخل یک استایل نویس و بعد اسم کلاست رو هم که دادی (detailsButton) اگه نشد با id یکبار تست بگیر- موردی نداره کد ایشون!!!

spicirmkh
سه شنبه 27 آبان 1393, 12:18 عصر
.detailsButton {
این داخل یک استایل نویس و بعد اسم کلاست رو هم که دادی (detailsButton) اگه نشد با id یکبار تست بگیر- موردی نداره کد ایشون!!!

این تصویر ببینید
125827

mehdin69
سه شنبه 27 آبان 1393, 12:56 عصر
این تصویر ببینید
125827

یه لینک از پروژه و دیتابیس که حجمش کم باشه و فقط همین صفحه توش باشه رو بدید ببینم چشه

spicirmkh
سه شنبه 27 آبان 1393, 12:58 عصر
من اینجوری نوشتم درست شد


command.Custom("View").Text(" ").HtmlAttributes(new { id = "editteam" });


و



@section styles{
<style>
#editteam {
background-image: url('../images/MenuIcons/selecttag.png');
background-position: center center;
background-repeat: no-repeat;
background-size: 20px;
width: 24px;
height: 24px;
display: inline-block;
background-color: white !important;
border-width: 0px !important;
}
</style>
}

spicirmkh
سه شنبه 27 آبان 1393, 13:40 عصر
یه لینک از پروژه و دیتابیس که حجمش کم باشه و فقط همین صفحه توش باشه رو بدید ببینم چشه

این هم فایل view بنام index

mehdin69
سه شنبه 27 آبان 1393, 13:50 عصر
ببین این کار میکنه؟
میره سایت گوگل؟



@{
ViewBag.Title = "Index";
}

@section styles{
<style>
.typicalReportButton {
background-image: url('../images/MenuIcons/view-details-32.png') !important;
background-position: center center;
background-repeat: no-repeat;
background-size: 20px;
width: 24px;
height: 24px;
display: inline-block;
}
</style>
}
<h2>Index</h2>
<div id="SearchSection">
<input type="text" id="txtSearch" class="k-textbox" />
<button class="k-button" id="btnSearch" style="width:150px">Search</button>
<button class="k-button" id="btnClear" style="width:100px">Clear</button>


<div id="ADUserSection">
<div id="ADSearchedUser">
List of users in Active directory:
<div id="ADuserGrid">
@(Html.Kendo().Grid<Eshop.Models.ViewModel.MemberViewModel>()
.Name("gridMember")
.Pageable()



.Columns(columns =>
{
columns.Bound(member => member.MemberID).Title("MemberID ").Width(100);
columns.Bound(member => member.Name).Title("Name ").Width(300);
columns.Bound(member => member.Family).Title("Family").Width(400);
columns.Command(command => { command.Edit(); });
columns.Command(command =>
{
command.Custom("typical").Text("<a href='http://www.google.com/'><img src='../Content/images/MenuIcons/view-details-32.png' width='20' style='margin:4px'/></a>");

}).Width(30);


})
.AutoBind(false)
.Editable(ed => ed.Mode(GridEditMode.PopUp).TemplateName("MemberPopup"))
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Action("Search", "Member").Data("AdditionalData"))
.Model(model => model.Id(m => m.MemberID))
.Update(update => update.Action("EditingPopup_Update", "Member"))
)
)

</div>

</div>


</div>
</div>

<script>

$(document).ready(function () {
// $("#ADUserSection").fadeOut(0);
// $("#AvailableUserRoleSection").fadeIn();
//alert("ok");

AdditionalData();
$("#ADUserSection").fadeIn();
var grid = $("#gridMember").data("kendoGrid").dataSource.read({ searchText: enterTest });



});


var enterTest

$("#btnSearch").click(function () {
enterTest = $("#txtSearch").val().trim();
//alert(enterTest);
ProoceesGried();


});

$('#txtSearch').keypress(function (e) {
var code = e.keyCode ? e.keyCode : e.which;
if (code == 13) {
enterTest = $("#txtSearch").val().trim();
//alert(enterTest)
// Enter was pressed => act accordingly
ProoceesGried();
}
});


$("#btnClear").click(function () {
enterTest = "";
$("#txtSearch").val("");
ProoceesGried();
});

function ProoceesGried() {
// alert("porcocess " + enterTest );
AdditionalData();
$("#ADUserSection").fadeIn();
var grid = $("#gridMember").data("kendoGrid").dataSource.read({ searchText: enterTest });
var grid = $("#gridMember").data("kendoGrid").dataSource.page(1);
}

function AdditionalData() {
$("#ADuserGrid").fadeIn();
return {
searchText: enterTest
}


}


</script>

spicirmkh
سه شنبه 27 آبان 1393, 15:34 عصر
مشکل دستور زیر است که HtmlAttributes ندارد


columns.Command(command => { command.Edit(); });


این استایل که تعریف کرده اید هیچ کلاسی براش تعریف نشده و کلید اولی فاقد عکس است

125832

mehdin69
سه شنبه 27 آبان 1393, 16:07 عصر
خب استایل بهش بدید
الان این شکلی هست که من درست کردم
125835

spicirmkh
سه شنبه 27 آبان 1393, 16:25 عصر
خب استایل بهش بدید
الان این شکلی هست که من درست کردم
125835


نه این شکلی نیست فقط کلید لینک برای گوگل تصور داره م برای delete و Edit و Custom تصور نداره
چه جوری استایل بدم

این typicalReportButton کلمه کلیدی است برای Grid کندو

تصویر برای شما گذاشتم

mehdin69
چهارشنبه 28 آبان 1393, 07:43 صبح
نه این شکلی نیست فقط کلید لینک برای گوگل تصور داره م برای delete و Edit و Custom تصور نداره
چه جوری استایل بدم

این typicalReportButton کلمه کلیدی است برای Grid کندو

تصویر برای شما گذاشتم

از همون کلید سوم واسه همش استفاده کن فقط بجا typicalReportButton که اون بالا توی استایل تعریفش کردم
برو یه اسم دیگه بده و توی استایل واسه خودت تغییر بده هرجوری دوست داری بساز با استایل

RIG000
چهارشنبه 28 آبان 1393, 09:18 صبح
خب استایل بهش بدید
الان این شکلی هست که من درست کردم
125835
یک سوال غیر مرتبط با موضوع سوال کلی-
شما در این تصویر فکر میکنم دارید inline ویرایش رو انجام میدید و فکر میکنم که به طور چند تایی ویرایش و ... رو میتونین انجام بدید اما چطوری validation رو اعمال میکنید؟!!

mehdin69
چهارشنبه 28 آبان 1393, 09:33 صبح
یک سوال غیر مرتبط با موضوع سوال کلی-
شما در این تصویر فکر میکنم دارید inline ویرایش رو انجام میدید و فکر میکنم که به طور چند تایی ویرایش و ... رو میتونین انجام بدید اما چطوری validation رو اعمال میکنید؟!!

inline نیست
اما validate هم میشه انجام داد با js

spicirmkh
چهارشنبه 28 آبان 1393, 09:55 صبح
inline نیست
اما validate هم میشه انجام داد با js

من بصورت inline انجام نمی دهم می خواهم کلید بجای text از یک Icon استفاده کنم

یکی از راهها HtmlAttributes و دیگری command.Custom("typical").Text باز هم مشکل دارم

mehdin69
چهارشنبه 28 آبان 1393, 10:04 صبح
من بصورت inline انجام نمی دهم می خواهم کلید بجای text از یک Icon استفاده کنم

یکی از راهها HtmlAttributes و دیگری command.Custom("typical").Text باز هم مشکل دارم

من چی بگم؟
کل کد رو براتون گذاشتم داره جواب میگره
فقط میتونم بگم نمیدونم دیگه

spicirmkh
چهارشنبه 28 آبان 1393, 10:10 صبح
من چی بگم؟
کل کد رو براتون گذاشتم داره جواب میگره
فقط میتونم بگم نمیدونم دیگه
از شما ممنونم

لطفا کاش یک پروژه ساده که خود شما تست کرده بودید برایم ارسال میکردین من از آن الگو بگیرم
اخه در کل پروژه ارسالی از CSS استفاده نشده و هیچ ارجاعی به این CSS وجود نداره
همچنین از دستور HtmlAttributes استفاده نشده

mehdin69
چهارشنبه 28 آبان 1393, 10:24 صبح
از شما ممنونم

لطفا کاش یک پروژه ساده که خود شما تست کرده بودید برایم ارسال میکردین من از آن الگو بگیرم
اخه در کل پروژه ارسالی از CSS استفاده نشده و هیچ ارجاعی به این CSS وجود نداره
همچنین از دستور HtmlAttributes استفاده نشده

تا فردا انشاالله وقت کنم مینویسم و میزارم توی همین پست