מישהו יודע איך לעשות את הטאבים של avalondock שיהיו מימין לשמאל?
(לעשות שהParent יהיה מימין לשמאל לא עזר)
תודה מראש
מישהו יודע איך לעשות את הטאבים של avalondock שיהיו מימין לשמאל?
(לעשות שהParent יהיה מימין לשמאל לא עזר)
תודה מראש
@dovid
אתה צודק הבעיה היתה בפקד - תודה!
אני משתמש עם avalonDock ב wpf
נתקלתי בבעיה כאשר החלון מצטמצם שאם החלון מפוצל לשניים אזי החלון העליון עולה מעל החלון התחתון ומסתיר את סרגל הכלים שלו
כאשר התצוגה מצומצמצת המסמכים מתקרבים מדאי וחופפים אחד על השני
ככה אמור להיות:

זה מה שקורה כאשר החלון מוקטן - החלון העליון דורס את סרגל הכלים ואת הטאבים של התחתון:

@dovid כתב בבאג בAvalonDock WPF:
var pane = dockManager.Layout.Descendents().OfType<LayoutDocumentPane>().First();
pane.Children.Add(newLayoutDocument);
נפלא! אכן פתר את הבעיה.
אם אפשר לשאל על עוד בעיה?
כאשר התצוגה מצומצמצת המסמכים מתקרבים מדאי וחופפים אחד על השני


@dovid
עשיתי את הנ"ל ולא עזר.
לא הצלחת לשחזר עם הקוד הנ"ל?
@dovid כתב בבאג בAvalonDock WPF:
אז לדעתי כל הבעיות זה בגלל שלא יצרת מופע בכל פעם של הcntrlBookView.
כלומר זה אמור לחסוך גם את הגריד.
יצרתי ולא עזר
יש לי פרוייקט שפותח owned window מתוך הmainwondow
איך אני עושה שה usercontrol שנמצא בתוך הmainwindow יישאר בקידמה לפני הowned window?
אני מנסה להשתמש בAvalonDock (פלטפורמה המדמה את הפלטפרומה של Visualstudio) עם טאבים נסגרים וחלונות נגררים ועוד ועוד מצו"ב תמונה.

נתקלתי בבאג שאם אני מצמיד אפילו אחד המסמכים למטה ואז סוגר את המסמכים למעלה שוב כל טעינה של מסמך חדש אינו מוצג כלל. אשמח לפיתרון
הנה הקוד שלי. (את הפלטפורמה אני יוצר בwpf) ואת המסמכים אני מוסיף דינאמית בC#.
WPF
<DockingManager x:Name="dockManager">
<!--Define your layout here-->
<LayoutRoot>
<LayoutPanel Orientation="Horizontal">
<!--Main Content Area-->
<LayoutDocumentPane x:Name="documentPane">
<!--Add more documents as needed-->
</LayoutDocumentPane>
</LayoutPanel>
</LayoutRoot>
</DockingManager>
והקוד בc# להוספה דינאמית של מסמכים
private void AddNewTab(string title)
{
\\לא יודע למה צריך להוסיף grid אבל בלי זה הוא נותן לי שגיאות מוזרות.
Grid newGrid = new Grid();
newGrid.Children.Add(cntrlBookView);
LayoutDocument newLayoutDocument = new LayoutDocument
{
Title = title,
Content = newGrid
};
cntrlBookView.layoutDocument = newLayoutDocument;
newLayoutDocument.IsActive = true;
documentPane.Children.Add(newLayoutDocument);
newLayoutDocument.IsActive = false;
}
@Sara-Rivka כתב באיך יוצרים את האייקון הזה בhtml?:
שלום וברכה.
אין לי ידע בספריות בhtml.
ואני צריכה לשים את האייקון הזה (החץ הכחול):
משהו יוכל לכתוב לי קוד לזה?
תודה מראש.
הכוונה לא ברורה מספיק:
אתם מנסים לשים bullet או סתם אייקון או ליצור treeview?
אם הכוונה רק לאייקון אפשר בקלות על ידי יוניקוד
<span style="color: blue;">◂</span>
נלקח מכאן
https://www.compart.com/en/unicode/search?q=Triangle#characters
יש שם גדלים שונים וגם כיוונים שונים. למעשה אפשר לשחק עם הגדלים גם בcss font size
@dovid
זה לא יגרום לטעינת העמוד מחדש?
אני מחפש סקריפט לדף אינטרנט שיוכל לכבות ולהפעיל טעמים או ניקוד כמו שיש במאגר תא שמע.
https://tashma.jewishoffice.co.il/books/learn/1000/תנ"ך/בראשית/א
כמה הערות:
שינוי צבע הטקסט לא בא בא בחשבון
לא הגיוני לעשות span לכל סימן
להסיר לכאורה יותר קל מלהחזיר
להחזיר על ידי רענון הדף אפשרי אבל - זה יקפיץ את המשתמש חזרה לראש הדף.
תודה מראש
@dovid כתב בwpf treeview עם scrollBar יותר יפה:
חפש בגוגל WPF THEMES ותמצא משהו כלבבך ובדוק שהוא מספיק מתוחזק/פופולרי ותשתמש בו.
לא מצאתי משהו שמטפל בscrollbar מישהו מכיר?
מישהו יודע אם אפשר ליצור scrollbar יותר יפה ומודרני עבור פקד treeview בwpf
מצו"ב תמונה להמחשה

תודה מראש
@מוטי-מן כתב בעבודה בתכנות ממספר מחשבים:
ניסיתי את וואן דרייב וגוגל דרייב - זוועת עולם.
אשמח לדעת מה היה הזוועה
@dovid
השאלה היא גם מה וגם איך
אין לי גישה לספריא אבל אני לא צריך דווקא כמו שהם עשו כמו שבר אילן עשו גם טוב (שלוחצים על המספר).
אדרבה במחשבה שנייה מבחינתי יותר מסודר שהמספרים יהיו לחיצים ולא בטקסט. אבל לא הצלחתי.
התוצאה שאני רוצה היא שהמשתמש יוכל לנווט על ידי לחיצה למפרשים הקשורים לאותו הפסוק שהוא לחץ עליו.
@dovid כתב בhtml לחיץ אבל גם שיאפשר בחירה:
בהצעה האחרונה שלך, אתה בודק אם יש טקסט בחור, אבל תמיד בעת תחילת בחירה אין כלום שבחור כעת.
נכון, זה יכול ליצור קצת בעיות.
@dovid
אולי אפשר ככה (שהקוד בודר אם יש טקסט מסומן)
var liElements = document.querySelectorAll('li');
liElements.forEach(function (li) {
li.addEventListener('click', function(event) {
// Check if any text is selected
if (window.getSelection().toString() === '') {
// If no text is selected, call the showAlert function
showAlert.call(li, event);
}
});
});
מה אתה אומר?
@dovid
חשבתי אולי פשוט לעשות שרק המיספור עצמו יהיה לחיץ ולא הטקסט שלו אבל אל הצלחתי לעשות את זה
אני מנסה ליצור דף html בו כל האלמנטים של li הם לחיצים לדוגמא מחזיר את מספר האלמנט. אבל בלי לאבד את הנוחות של בחירת הטקסט והעתקתו. ש משהו דומה בספריא.
בעצם הרעיון הוא שאם למשל יש לי מסמך שמציג את החומש אז כל פסוק יהיה אפשר ללחוץ עליו כדי לקבל מפרשים וכו'.
הבעיה שניתקלתי בה שברגע שהגדרתי את האלמנט כלחיץ אז זה מפריע לבחירת הטקסט בלי לחיצה עליו.
מקווה שהשאלה מספיק ברורה
מצו"ב הקוד שעשיתי לבינתיים
<!DOCTYPE html>
<html lang="he">
<head>
<meta charset="UTF-8">
<style>
body {
text-align: right;
text-align: justify;
direction: rtl;
}
h2 {
cursor: pointer;
color: #4169E1;
}
h3 {
cursor: pointer;
color: #6495ED;
}
ol {
list-style-type: hebrew;
}
li:hover {
background-color: #f0f0f0; /* Change the background color to your desired color */
}
</style>
</head>
<body>
<h1>במדבר</h1>
<h2>פרק א</h2>
<ol list-style-type: hebrew;>
<li>וַיְדַבֵּ֨ר יְהֹוָ֧ה אֶל־מֹשֶׁ֛ה בְּמִדְבַּ֥ר סִינַ֖י בְּאֹ֣הֶל מוֹעֵ֑ד בְּאֶחָד֩ לַחֹ֨דֶשׁ הַשֵּׁנִ֜י בַּשָּׁנָ֣ה הַשֵּׁנִ֗ית לְצֵאתָ֛ם מֵאֶ֥רֶץ מִצְרַ֖יִם לֵאמֹֽר׃</li>
<li>שְׂא֗וּ אֶת־רֹאשׁ֙ כׇּל־עֲדַ֣ת בְּנֵֽי־יִשְׂרָאֵ֔ל לְמִשְׁפְּחֹתָ֖ם לְבֵ֣ית אֲבֹתָ֑ם בְּמִסְפַּ֣ר שֵׁמ֔וֹת כׇּל־זָכָ֖ר לְגֻלְגְּלֹתָֽם׃</li>
<li>מִבֶּ֨ן עֶשְׂרִ֤ים שָׁנָה֙ וָמַ֔עְלָה כׇּל־יֹצֵ֥א צָבָ֖א בְּיִשְׂרָאֵ֑ל תִּפְקְד֥וּ אֹתָ֛ם לְצִבְאֹתָ֖ם אַתָּ֥ה וְאַהֲרֹֽן׃</li>
<li>וְאִתְּכֶ֣ם יִהְי֔וּ אִ֥ישׁ אִ֖ישׁ לַמַּטֶּ֑ה אִ֛ישׁ רֹ֥אשׁ לְבֵית־אֲבֹתָ֖יו הֽוּא׃</li>
<li>וְאֵ֙לֶּה֙ שְׁמ֣וֹת הָֽאֲנָשִׁ֔ים אֲשֶׁ֥ר יַֽעַמְד֖וּ אִתְּכֶ֑ם לִרְאוּבֵ֕ן אֱלִיצ֖וּר בֶּן־שְׁדֵיאֽוּר׃</li>
<li>לְשִׁמְע֕וֹן שְׁלֻמִיאֵ֖ל בֶּן־צוּרִֽישַׁדָּֽי׃</li>
<li>לִֽיהוּדָ֕ה נַחְשׁ֖וֹן בֶּן־עַמִּינָדָֽב׃</li>
<li>לְיִ֨שָׂשכָ֔ר נְתַנְאֵ֖ל בֶּן־צוּעָֽר׃</li>
</ol>
<script>
// Define the onclick handler globally
function showAlert() {
// Check if the clicked element is an ol
if (this.tagName.toLowerCase() === 'li' && this.parentElement.tagName.toLowerCase() === 'ol') {
// Get the ordered list number and show an alert
alert(Array.from(this.parentElement.children).indexOf(this) + 1);
} else {
// If not an ol, show the text content
alert(this.textContent);
}
}
// Attach the click event to all elements with the correct classes
var customHeader = document.querySelectorAll('.customHeader');
var customHeader2 = document.querySelectorAll('.customHeader2');
customHeader.forEach(function (header) {
header.addEventListener('click', showAlert);
});
customHeader2.forEach(function (header) {
header.addEventListener('click', showAlert);
});
// Attach the click event to all h1 elements
var h3Elements = document.querySelectorAll('h3');
h3Elements.forEach(function (h3) {
h3.addEventListener('click', showAlert);
});
// Attach the click event to all h2 elements
var h2Elements = document.querySelectorAll('h2');
h2Elements.forEach(function (h2) {
h2.addEventListener('click', showAlert);
});
var liElements = document.querySelectorAll('li');
liElements.forEach(function (li) {
li.addEventListener('click', showAlert);
});
</script>
</body>
</html>
קוד C# להמרת מספר למספר עברי - מקווה שיהיה שימושי למישהו.
using System;
public class ClassHebrewNumbering
{
public static string ToHebrewNumber(int number)
{
if (number < 1)
{
throw new ArgumentOutOfRangeException("המספר צריך להיות מעל 1");
}
string hebrewNumber = "";
while (number >= 400)
{
hebrewNumber += "ת";
number -= 400;
}
// Handle numbers 100-390
if (number >= 300)
{
hebrewNumber += "ש";
number -= 300;
}
else if (number >= 200)
{
hebrewNumber += "ר";
number -= 200;
}
else if (number >= 100)
{
hebrewNumber += "ק";
number -= 100;
}
// Handle numbers 10-90
if (number >= 10)
{
int tensIndex = (number / 10) - 1; // Subtract 1 to match array indexing
hebrewNumber += Tens[tensIndex];
number -= (tensIndex + 1) * 10; // Add 1 back for indexing
}
// Handle numbers 1-9
if (number > 0)
{
hebrewNumber += Units[number - 1]; // Subtract 1 to match array indexing
}
hebrewNumber = hebrewNumber.Replace("יה", "טו");
hebrewNumber = hebrewNumber.Replace("יו", "טז");
//hebrewNumber.Replace("רעב", "ערב");
//hebrewNumber.Replace("רעד", "עדר");
//hebrewNumber.Replace("רע", "ער");
//hebrewNumber.Replace("רצח", "רחצ");
//hebrewNumber.Replace("תשמד", "תדשם");
//hebrewNumber.Replace("שמד", "שדמ");
//hebrewNumber.Replace("שד", "דש");
return hebrewNumber;
}
private static readonly string[] Units =
{
"א", "ב", "ג", "ד", "ה", "ו", "ז", "ח", "ט"
};
private static readonly string[] Tens =
{
"י", "כ", "ל", "מ", "נ", "ס", "ע", "פ", "צ", "ק"
};
}