خدمات تقارير SQL عارض ويب - يمكنك تحريك عرض التقرير الزر ؟

StackOverflow https://stackoverflow.com/questions/20744

سؤال

باستخدام عنصر تحكم عارض عرض خدمات تقارير SQL التقارير على شبكة الإنترنت صفحة (Microsoft.ReportViewer.WebForms), يمكنك تحريك عرض التقرير الزر ؟ ومن التخلف إلى الجانب الأيمن من التقرير ، مما يعني أنك يجب أن انتقل عبر قبل زر غير مرئية.لا مشكلة بالنسبة التقارير التي تناسب نافذة العرض ، ولكن على نطاق واسع التقارير التي سرعان ما قضية.

هل كانت مفيدة؟

المحلول

إنه نوع من الإختراق, ولكن يمكنك تحريكه في جافا سكريبت.انظر فقط ما HTML ReportViewer يولد و كتابة المناسبة شفرة جافا سكريبت لتحريك زر.لا تستخدم جافا سكريبت لإخفاء زر (لأننا أردنا الخاصة بنا عرض التقرير على زر).أي شفرة جافا سكريبت التي تعالج ولدت ReportViewer HTML يجب أن تأتي بعد تحكم ReportViewer في .صفحة aspx.هنا هو بلدي رمز إخفاء زر ، لتعطيك فكرة عن ما كنت تفعل:

function getRepViewBtn() {
  return document.getElementsByName("ReportViewer1$ctl00$ctl00")[0];
}

function hideViewReportButton() { // call this where needed
  var btn = getRepViewBtn();
  btn.style.display = 'none';
}

نصائح أخرى

لا يمكنك إعادة عرض التقرير على زر تحكم ReportViewer.

ومع ذلك ، يمكنك إنشاء الخاص بك مخصص تقرير عرض التحكم.التحكم سيكون تتألف من حقول التقرير المعلمات و زر لإنشاء التقرير.عندما ينقر المستخدم على زر يمكنك إنشاء التقرير في الخلفية.يمكنك عرض التقرير كملف PDF, HTML, الخ.

السبب يتم الضغط على زر على اليمين هو أن td للمعلمات وقد width="100%".أنا حل هذه المشكلة مع مسج التالية.أنها ببساطة تغيير العرض من المعلمات td إلى 1.المتصفحات توسيع العرض من تلقاء نفسها لعرض محتويات العنصر.ويساعد هذا الأمل.

<script type="text/javascript">
    $(document).ready(function() {
        $("#<%= ReportViewer1.ClientID %> td:first").attr("width", "1");
    });
</script>

منذ أن كنت تبحث عن إجابة بالأمس فقط ، اعتقدت بعد ما خطرت على حل مشكلتنا.لدينا تقارير يعود واسعة ، كما أردنا "عرض التقارير" زر موجود على الجانب الأيسر من السيطرة لذلك لا تحتاج إلى التمرير للوصول إلى الزر.كنت بحاجة للذهاب إلى المصدر من تقديم الملف إلى العثور على معرف أسماء زر الجدول الهدف.

كتبت البسيطة قص و لصق وظيفة جافا سكريبت لسحب زر من موقعها الأصلي و إسقاط أساسا إلى الصف التالي في التي تحتوي على الجدول أدناه تاريخ جامعي.

function moveButton() {
  document.getElementById('ParameterTable_ctl00_MainContent_MyReports_ctl04').appendChild(document.getElementById('ctl00_MainContent_MyReports_ctl04_ctl00'));
        }

هذه الوظيفة يحصل ودعا التقرير المشاهد تحميل الحدث.

ScriptManager.RegisterStartupScript(Me, Me.GetType(), "moveButton", "moveButton();", True)

لضبط الموقف ، كنت معرف CSS.

#ctl00_MainContent_MyReports_ctl04_ctl00 {
    margin: 0px 0px 0px 50px;
}

كان عندي نفس المشكلة و انتهت باستخدام امتداد على ترافيس كولينز الجواب ؛ فضلا عن تغيير الجدول "عرض العمود" أنا أيضا محاذاة "عرض التقرير" الزر الأيسر بحيث يظهر neearer إلى بقية الضوابط.

    <script type="text/javascript">
  $(document).ready(function() {
     $("#_ctl0_MainContent_reportViewer_fixedTable tr:first td:first-child").attr("width", "1"); 
     $("#_ctl0_MainContent_reportViewer_fixedTable tr:first td:last-child").attr("align", "left");   
  });
</script>

قد تحتاج إلى قرص مسج محدد اعتمادا على عنصر التسمية المخصصة الخاصة بك القائمة التحكم.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top